Process.Start()默默地拒绝启动

时间:2015-04-21 11:33:59

标签: c# process windows-services exe

我有一个Windows服务,其任务是在其预定时间到达时运行.exe文件。该程序在我安装程序的所有设备下运行。运行该服务的用户具有所有必需的管理权限。

这是程序运行.exe文件的代码。 Log()函数将消息写入日志文件中。

Log("About to run the file...");
try
{
    Process.Start(filePath, args);
    Log("File Triggered!");
}
catch (Exception ex)
{
    Log("Error.");
}

程序会一直运行,直到记录"关于运行文件......"然后没有任何事情发生,没有任何记录。这是非常奇怪的,知道完全相同的程序在我测试的所有其他环境中都能正常工作。

Process.Start()是否可能无声且无错误地拒绝运行我的.exe文件?目标.exe文件放在与正在运行的服务完全相同的文件夹中,因此不会出现问题。

我服务的登录用户是否缺乏运行此文件的权限?如果是这样,为什么我们不会收到"错误"日志中的消息?非常感谢任何帮助!

更新1 :目标操作系统是Windows 8,我在Windows 7下开发了我的程序。

更新2 :我在另一台运行Windows 8.1的计算机上试用了该程序,但它运行正常。

1 个答案:

答案 0 :(得分:0)

Windows Server 2012会阻止从其他位置复制的所有文件。所以我解锁了所有的程序文件。谢谢你的帮助。