[英]How do I open a web browser from a .NET Program? Process.Start() isn't working?
[英]How can I use Process.Start() to execute program on the server-side via web service?
我在IIS中创建了一个wcf服务和主机。 它内部有一个通过从客户端调用在服务器端执行程序的方法。 它似乎不起作用。 调用方法时没有任何反应。
System.Diagnostics.Process.Start(@"C:\MtbKill.bat");
以上是不起作用的代码。 我也试过一些过程。
Process[] process = Process.GetProcessesByName("Mtb");
foreach (var item in process)
{
try
{
item.Kill();
}
catch
{
}
}
它也不起作用。 我很困惑,它与授权有关吗? 因为我试过这样创建文件夹,所以没有任何问题。
解
我搜索了许多相关问题的来源。 以下是我在System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)中发现Access被拒绝的内容
要运行批处理文件,必须运行带参数“/ c”的“cmd.exe”和文件名。
System.Diagnostics.Process.Start(@"cmd.exe /c C:\MtbKill.bat");
解
很抱歉编辑而不是发布答案
这是解决我的问题的相关问题链接。
System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)拒绝访问
谢谢你的帮助。
这就是我开始一个过程的方式:
try{
Process.Start("osk.exe", "/C");
} catch(exception ex)
{
WriteLog("Error: Onscreen keyboard could not start.", ex);
}
这是我杀死一个进程的方式:
try
{
Process[] processlist = Process.GetProcesses();
foreach (Process theprocess in processlist)
{
if (theprocess.ProcessName == "osk")
{
theprocess.Kill();
}
}
}
catch (Exception ex)
{
WriteLog("Error: KillKeyBoardProcess", ex);
}
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.