0

我正在使用 C# 开发控制台应用程序,正常运行时将访问 Vista 和 Windows 7 上“C:\ProgramData”中的通用应用程序数据文件夹。

例如:

System.Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)

但是,在某些情况下,此应用程序将从服务(例如 TeamCity)生成,这将返回类似“C:\Windows\system32\config\systemprofile\AppData\Roaming”而不是“C:\ProgramData”的内容。我知道这是服务的预期行为,但在我的应用程序中没有预料到它,因为它不是服务(只是由服务启动)。

我希望这种行为保持一致,以便在手动运行应用程序或通过 TeamCity 运行应用程序时,我现在拥有重复的配置文件等。这可能吗?

谢谢,艾伦

4

1 回答 1

0

玩一点环境变量怎么样?见。如果你的应用程序有足够的权限,你就不需要复制你的配置/代码。GetEnvironmentVariable SetEnvironmentVariable

于 2012-09-11T18:49:39.620 回答