【发布时间】:2013-06-14 23:58:57
【问题描述】:
我正在尝试上传文件,然后使用服务器端进程对其进行转换。
这是在 ASP.NET 开发服务器 localhost:8638 上运行的 Visual Studio Web ASP.NET Web 应用程序的一部分
string fn = System.IO.Path.GetFileNameWithoutExtension(File1.PostedFile.FileName);
Process p = new Process();
p.StartInfo.WorkingDirectory = Server.MapPath("/Data");
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = "soffice --headless --invisible -convert-to pdf "+fn+".ppt";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.Start();
p.WaitForExit();
我可以在Data目录中手动打开cmd.exe,然后输入这个命令,替换文件名,它就可以工作了。但是,运行此代码不会产生任何结果
我错过了什么,或者做错了什么?
【问题讨论】:
-
运行这段代码时出了什么问题?
-
它默默地无法将文件转换为 .pdf
-
cmd.exe不接受这样的论点。你应该自己运行这个过程。 -
它是否在具有权限的用户帐户下运行?您可以将调试器附加到进程并查看会发生什么。
-
@SLaks 哦。是的,这行得通
标签: c# process path cmd filepath