我需要在windows服务程序中获取特殊文件夹的帮助。我在windows窗体应用程序中使用了以下代码:
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
并得到路径“c:\用户\\appdata\roaming”*
但是如果我在我的winows服务项目中运行相同的代码,我得到的路径是:“c:\ windows\serviceprofiles\localservice\appdata\roaming\”
但我需要前面的路径(在windows窗体中)。如何在服务项目中获得相同的路径。
我有用户设置文件,日志,配置文件在“C:\用户\\AppData\Roaming”文件夹中。因此,我必须在windows窗体应用程序和windows服务项目中引用相同的路径。
有人能告诉我,这里有什么不同,我如何在两种类型的项目中获得相同的路径?
谢谢,
沙拉斯
最佳答案
您的Windows服务应该使用“用户”帐户,而不是“LocalService”或“LocalSystem”。
ServiceProcessInstaller process = new ServiceProcessInstaller();
process.Account = ServiceAccount.User;
在安装服务期间,您需要指定当前登录用户的用户名和密码。用户名应采用以下格式:“machinename\username”。示例:“.\John”
关于windows - Windows服务项目中的AppData\Roaming文件夹,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8273674/