.net Process.Start()在Windows 2012 R2上不起作用
My Process.Start()实现在Windows 2012 R2中不起作用 我在Windows 2012服务器上部署了Windows服务。在Windows服务中,我试图使用Process.Start(文件名)调用一个批处理(.bat)文件 运行服务时,无法调用批处理文件 我做了一些更改,如将NoInteractiveServices设置为0并取消阻止所有文件。。但是没有运气 有人有不同的解决方案吗.net Process.Start()在Windows 2012 R2上不起作用,.net,vb.net,windows,windows-server-2012,.net,Vb.net,Windows,Windows Server 2012,My Process.Start()实现在Windows 2012 R2中不起作用 我在Windows 2012服务器上部署了Windows服务。在Windows服务中,我试图使用Process.Start(文件名)调用一个批处理(.bat)文件 运行服务时,无法调用批处理文件 我做了一些更改,如将NoInteractiveServices设置为0并取消阻止所有文件。。但是没有运气 有人有不同的解决方案吗 Private Function RunTask(ByVal sPath As Strin
Private Function RunTask(ByVal sPath As String, ByVal sArgs As String, ByVal fLog As Boolean) As Boolean
Dim targetProcess As Process
Try
targetProcess = Process.Start(sPath, sArgs)
Catch ex As Exception
WriteToLog("Can not start process '" + sPath + "' - " + ex.Message)
Return False
End Try
If fLog = True Then
WriteToLog("Started process '" + sPath + "' with args '" + sArgs + "'")
End If
Return True
End Function
它调用批处理文件,然后继续执行以下代码:
--> net stop "Exstream Monitor"
已在windows 2012服务器上部署windows服务。。。process.start(bat文件名)
CreateNoWindow
的属性是否设置为true
和UseShellExecute
的属性是否设置为false
并重新启动服务器,解决了问题。@harshalsuryavanshi和服务进程对所讨论的目录/文件具有访问权限?是。服务帐户对目录&c:\windows\temp目录具有完全访问权限。1。服务帐户对文件和文件夹2具有完全访问权限。我尝试创建像CreateNoWindow和useshellexecute3这样的属性。服务正常运行,但无法触发bat文件。事件查看器中未记录任何错误。4.此服务不调用任何与GUI相关的代码。它只是调用bat文件如何运行带有/C batchfilename参数的cmd.exe。当
UseShellExecute
为false时,batbat
文件不能直接执行。您必须调用cmd
。