C# 财产'$你的财产在这里';无法从中创建';s的默认值。错误消息:找不到路径%temp%的一部分

C# 财产'$你的财产在这里';无法从中创建';s的默认值。错误消息:找不到路径%temp%的一部分,c#,.net,windows,C#,.net,Windows,情况: de客户端服务器上的windows服务(在本地系统帐户下运行)开始崩溃。它已经运行了几个月没有问题。 我们在事件日志中看到的错误是: 故障模块名称:KERNELBASE.dll,版本:6.1.7601.17965,时间 邮票:0x506dcae6 异常代码:0xe0434352 经过一番搜索,我们得出结论,这意味着除了我们的windows服务因未处理的异常而崩溃之外,什么都没有。幸运的是,我们的windows服务记录了所有异常。在我们的日志文件中,我们发现: 无法从其默认值创建属性“--

情况: de客户端服务器上的windows服务(在本地系统帐户下运行)开始崩溃。它已经运行了几个月没有问题。 我们在事件日志中看到的错误是:

故障模块名称:KERNELBASE.dll,版本:6.1.7601.17965,时间 邮票:0x506dcae6 异常代码:0xe0434352

经过一番搜索,我们得出结论,这意味着除了我们的windows服务因未处理的异常而崩溃之外,什么都没有。幸运的是,我们的windows服务记录了所有异常。在我们的日志文件中,我们发现:

无法从其默认值创建属性“--removed--”。错误消息:找不到路径的一部分:\TEMP\byvqti2p.tmp。 资料来源:系统 StackTrace:在


部分问题是服务器没有S:驱动器。也许曾经有过,但我们真的不知道

作为测试,我们尝试在我们的帐户下运行windows服务。成功了

因此,问题与本地系统帐户有关。解决方案来了:


打开环境变量屏幕。在系统变量下查找并找到“TEMP”和/或“TMP”。这是我们找到“S:\Temp”的地方。我们将其更改为“C:\Temp”,就像windows服务在本地系统下再次运行一样。

发布自答问题时,请将答案作为实际答案发布,而不是发布在问题本身中。
System.Configuration.SettingsPropertyValue.Deserialize()
   at System.Configuration.SettingsPropertyValue.get_PropertyValue()
   at System.Configuration.SettingsBase.get_Item(String propertyName)
   at System.Configuration.ApplicationSettingsBase.get_Item(String propertyName)