C# 系统诊断过程问题

C# 系统诊断过程问题,c#,asp.net,C#,Asp.net,我将基于ASP C#的网站从旧服务器迁移到新服务器,网站的所有功能在新服务器上运行良好,但这一个功能 System.Diagnostics.Process proc = System.Diagnostics.Process.Start(@BatchFile) 不启动批处理文件 我将:IIS管理员帐户设置为本地帐户,并与桌面交互。 ASP网络帐户-我已分配本地管理员帐户 IUSER帐户-将其设置为本地管理员 有人能告诉我我还缺少什么吗。你说有人迁移到了新服务器。您可能有无效路径、错误权限、错误标

我将基于ASP C#的网站从旧服务器迁移到新服务器,网站的所有功能在新服务器上运行良好,但这一个功能

System.Diagnostics.Process proc = System.Diagnostics.Process.Start(@BatchFile)
不启动批处理文件

我将:IIS管理员帐户设置为本地帐户,并与桌面交互。 ASP网络帐户-我已分配本地管理员帐户 IUSER帐户-将其设置为本地管理员


有人能告诉我我还缺少什么吗。

你说有人迁移到了新服务器。您可能有无效路径、错误权限、错误标识或以上所有内容

  • 确定并验证批处理所需的所有内容的路径,包括批处理文件本身
  • 设置您需要的任何网络路径,并确保应用程序池使用的标识(或启动流程时您提供的标识,如果您正在这样做)具有启动批处理和接触所有资源依赖项的权限
  • 验证批处理是否有效,并确定所需的工作目录
  • 找出C代码将什么视为当前目录。您可能需要将其写入事件日志,或者可以在HTTP响应中显示此信息。当你这样做的时候,也要展示实际使用的身份
  • 控制您的流程环境。使用
    ProcessStartInfo.WorkingDirectory
    属性控制工作目录。当
    UseShellExecute
    属性为false时,获取或设置要启动的进程的工作目录。当
    UseShellExecute
    为true时,获取或设置包含要启动的进程的目录

  • 是否返回或记录了任何错误?批处理文件是否使用了可能未安装在新服务器上的可执行文件?请允许记录调用的结果两台服务器之间的
    路径
    环境变量是否存在任何差异?