在asp.net Web服务中启动新进程

时间:2010-04-13 20:30:59

标签: asp.net iis web-services

我有以下代码:

 public void BeginConvert(object data)
 {
 ConverterData cObject = (ConverterData)data;
 string argument = string.Format("-i \"{0}\" -b {1} \"{2}\"", cObject.Source,    compression, cObject.Destiny);

 Process converterProcess = new Process();
 converterProcess.StartInfo.FileName = ffPath;
 converterProcess.StartInfo.Arguments = argument;
 converterProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
 converterProcess.Start();
 converterProcess.WaitForExit();
 }

我在webservice中使用它,我在新线程中启动它并返回退出代码1(错误,我正在尝试使用ffmpeg库进行视频转换),我冒充ASP.NET使用本地帐户具有读取和写入文件的权限,当我在我的机器上运行或调试它运行时,它可以工作,但知道在IIS doest'n中运行的Web服务。有人能帮助我吗?

1 个答案:

答案 0 :(得分:2)

我几乎可以肯定地说这是一个权限问题。你是如何进行模仿的?您是否在服务器上配置了相同的用户名/密码?

另一种可能性当然是StartInfo.FileName中的目标可执行文件不在正确的位置。

检查事件查看器中是否有未处理的异常,您可能会获得更多信息。