“greenshot.ini”,“greenshot-defaults.ini”和“greenshot-fixed.ini”文件都预先配置了“OutputFilePath”和“OutputFileAsFullpath”变量设置为“$ {USERPROFILE} \ Greenshot \”在将应用程序部署到工作站之前。每次启动应用程序时,都会验证“存储位置”是否正确设置为上述变量。但是,每当保存屏幕截图时,无论出于何种原因,“存储位置”都会自动更改为“C:\ Users \%USERNAME%\ Desktop”。关闭并重新启动应用程序后,“存储位置”将再次设置为正确的值。这种行为是持久的。如何将“存储位置”值设置为不会更改和/或无法更改的位置?
您确定USERPROFILE环境变量是否按预期设置? Greenshot目录是否存在? Greenshot是否有权在那里写作?这可能是Greenshot无法访问所需位置并因此返回默认位置的问题。如果是这样的话, Greenshot的日志文件 应该有希望提供一些有用的信息。
—
jklingen
是的,%userprofile%环境变量按预期设置。是的,绿色文件夹存在,用户拥有完全权限。我已经尝试了所有与用户相关的环境变量的组合,甚至手动指定路径(即c:\ users \ jsmith \ appdata \ roaming \ greenshot),但无济于事。存储位置始终设置为正确的位置(在绿色设置内),但无论出于何种原因,在捕获时都会发生变化。不幸的是,日志文件中没有与错误相关的信息。
—
user3208239
我做了一些测试 - 我发现重现类似行为的唯一方法是将路径设置为不存在的目录(例如C:\ doesnotexist \,这实际上导致在使用“保存时将路径重置为桌面”直接“。我假设您正在使用”直接保存“目的地?如果使用”另存为“会发生什么情况,您是否可以使用该对话框明确保存到所需位置?
—
jklingen
此外,您是否尝试过另一个非用户特定的位置,例如C:\ Windows \ Temp \?只是为了验证问题与用户的环境变量或权限无关?
—
jklingen
是。我尝试了“c:\ windows \ temp”以及用户完全控制的本地驱动器上的其他自定义位置(“d:\ testing”,“e:\ testing”)。遗憾的是,在我尝试设置存储位置并不重要的情况下,对于任何用户,它总是恢复到本地用户桌面。很奇怪。
—
user3208239