Process myProcess = new Process();
ProcessStartInfo remoteAdmin =
new ProcessStartInfo(Environment.GetFolderPath(Environment.SpecialFolder.System) + @"\iisreset.exe /restart");
remoteAdmin.UserName = username;
remoteAdmin.Password = pwd;
remoteAdmin.Domain = domain;
myProcess.StartInfo = remoteAdmin;
myProcess.StartInfo.UseShellExecute = false;
myProcess.StartInfo.RedirectStandardOutput = true;
myProcess.Start(); --- ERROR HERE
找不到指定的文件。
但是当我尝试通过 cmd 在本地计算机上运行 iisreset 时,它正在工作。
除非我错过了什么(Environment.GetFolderPath(Environment.SpecialFolder.System)
将取回本地计算机(运行代码的位置)特殊文件夹。所以它期待文件C:\Windows\System\iisreset.exe
位于您的机器上。我能想到的解决这个问题的唯一方法就是放弃C:\
并添加设备名称\\DeviceName\C$\
然后是文件路径。这是假设特殊文件夹系统位于您的计算机和远程计算机上的同一位置。
获取远程计算机系统目录的唯一其他方法是通过 WMI 或通过读取注册表项来获取。
因此,如果使用 WMI:
"SELECT * FROM Win32_OperatingSystem"
完成后,您需要自己构建文件夹字符串。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)