Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net Process.Start()在Windows 2012 R2上不起作用_.net_Vb.net_Windows_Windows Server 2012 - Fatal编程技术网

.net Process.Start()在Windows 2012 R2上不起作用

.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

My Process.Start()实现在Windows 2012 R2中不起作用

我在Windows 2012服务器上部署了Windows服务。在Windows服务中,我试图使用Process.Start(文件名)调用一个批处理(.bat)文件

运行服务时,无法调用批处理文件

我做了一些更改,如将NoInteractiveServices设置为0并取消阻止所有文件。。但是没有运气

有人有不同的解决方案吗

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
  • 服务代码是否捕获所有异常并将该信息发送到日志或系统事件
  • 代码避免GUI弹出窗口或任何/所有与GUI相关的任务
  • bat文件是否可以手动运行并正常工作,或者是否会自动失败
  • NoInteractiveServices设置为0

  • 允许以批处理方式登录、以服务方式登录、允许远程访问中包含的服务帐户

  • 提供了对c:\windows\temp的完全访问权限

  • 提供了对目录/文件的完全访问权限


  • 并重新启动服务器,解决了问题。

    @harshalsuryavanshi和服务进程对所讨论的目录/文件具有访问权限?是。服务帐户对目录&c:\windows\temp目录具有完全访问权限。1。服务帐户对文件和文件夹2具有完全访问权限。我尝试创建像CreateNoWindow和useshellexecute3这样的属性。服务正常运行,但无法触发bat文件。事件查看器中未记录任何错误。4.此服务不调用任何与GUI相关的代码。它只是调用bat文件如何运行带有/C batchfilename参数的cmd.exe。当
    UseShellExecute
    为false时,bat
    bat
    文件不能直接执行。您必须调用
    cmd