最后解决方案是:将IIS里面你程序用到的程序池的高级设置中“启用32位应用程序”置为true,“加载用户配置文件”置为true。
要做个视频的转码
类似这个,E:\ffmpeg.exe -i E:\11.mp4 -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 E:\22.mp4
但是死活不执行啊。。权限具体在哪设置呢?iis7的。。我已经设置应用程序池为admin了
你这个操作要给服务器的E盘的Everyone用户赋读写权限。
try
{
//_log.Error(strFileName);
StringBuilder Testurl = new StringBuilder("");
ProcessStartInfo start = new ProcessStartInfo(Utils.GetMapPath("/bin/sms.exe"));//设置运行的命令行文件问ping.exe文件,这个文件系统会自己找到
//如果是其它exe文件,则有可能需要指定详细路径,如运行winRar.exe
start.Arguments = Utils.GetMapPath(strFileName);//设置命令参数
start.CreateNoWindow = true;//不显示dos命令行窗口
start.RedirectStandardOutput = true;//
start.RedirectStandardInput = true;//
start.UseShellExecute = false;//是否指定操作系统外壳进程启动程序
Process p = Process.Start(start);
StreamReader reader = p.StandardOutput;//截取输出流
string line = reader.ReadLine();//每次读取一行
while (!reader.EndOfStream)
{
Testurl.Append(line);
line = reader.ReadLine();
}
_log.Debug(Testurl.ToString());
p.WaitForExit();//等待程序执行完退出进程
p.Close();//关闭进程
reader.Close();//关闭流
Utils.DeleteFile(strFileName);
return Testurl.ToString();
}
catch (Exception ex)
{
_log.Error("ProcessGetImgOcr", ex);
return "";
}
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有