我的应用程序在连接或断开服务器时会创建一个日志文件。这在win win XP中运行得很好。
当我在Vista和Win7中以管理员身份运行时没有问题,但如果我在Vista或Win7中以标准用户身份运行它,那么它将无法创建日志文件,我知道这是针对UAC的。
但是,我如何才能绕过这种情况,使我的应用程序能够以管理员身份运行。我是否需要在安装应用程序时添加任何注册表项,以便它始终以管理员身份运行。
发布于 2010-12-20 15:20:32
如果你真的想这样做,你可以add a manifest,这会导致你的应用程序在启动时需要UAC提升,但通常这不是你应该做的。
更有可能的是,你正在写一条你不应该写的路径。用户模式应用程序应该只写入current users文件夹或C:\Users\Public
文件夹,日志之类的内容应该放在C:\Users\Current User Name\Application Data\Your Program Name\
中。要获得ApplicationData路径,请使用Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
。或者,如果您想让所有用户共享该文件,请使用Environment.SpecialFolder.CommonApplicationData
。
https://stackoverflow.com/questions/4487517
复制相似问题