Windows Server 任务计划程序需要文件位于 System32 文件夹中吗?
我制作了一个 C# 控制台应用程序,需要 2 个配置文件来启动。 当我从 cmd 窗口运行它时,它运行良好,找到 2 个配置文件(放置在 exe 生成的目录中)。
但是,当使用 Windows 服务器任务计划程序时,我得到一个例外 - “ 找不到文件 'C:\Windows\system32\field.config' ”
我尝试使用 bat 文件来执行该任务,但出现了同样的问题 - 任务计划程序尝试在 System32 目录中查找文件。
将两个配置文件放在 System32 目录中是一种解决方法,但还有其他方法吗? 谷歌搜索类似问题,但根本没有任何信息。 任何帮助都非常感谢。
I have made a C# console application which needs 2 config files for booting.
When I run it from cmd window it runs fine-finds the 2 config files(which are placed within the exe produced directory).
However,when using the Windows server task scheduler i get an excpetion -
" Could not find file 'C:\Windows\system32\field.config' "
I tried to use a bat file for the task but same issue occurs-task scheduler tries to find the files in System32 direcory.
Placing the two config files within System32 direcory is a workaround but is there any other way?
Googled for similar issues but no information at all.
Any help is mutch appriciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我知道这已经很旧了,但我想我会把我的发现放在这里,以防有人偶然发现这一点。
在“属性”>“操作”上,它似乎是操作编辑屏幕上的“开始于(可选)”字段,您可以在其中键入希望工作目录所在的目录。
I know this is old but figured I'd put my finding here incase anyone stumbles on this.
On Properties>Action, it seems to be the "Start in (optional)" field on the action edit screen where you type the directory you want the working directory to be located.
由于没有实际的代码可供查看,让我做出一个有根据的猜测。在您的应用程序中,您尝试使用相对于可执行文件的路径打开这些文件(例如:field.config)。当你设置计划任务时,没有正确配置工作目录;然后应用程序以 System32 作为工作目录执行,这就是它在那里查找文件的原因。
With no actual code to look at, let me make an educated guess. Within your application, you are trying to open those files with paths relative to the executable (say: field.config). When you set the scheduled task, you are not properly configuring the working directory; then the application is executed with System32 as the working directory and that's why it looks for the files there.