use*_*567 3 asp.net asp.net-mvc azure wkhtmltopdf azure-web-sites
我有一个ASP.NET MVC 5应用程序,我需要在我的Azure网站中使用调用wkhtml2pdf.exe Process.Start.本地外翻工作正常.但似乎我的应用程序陷入困境Process.Start.Azure是否支持启动流程?
ahm*_*yed 11
ramiramilu的答案其实不正确.你可以运行你想要的任何exe(例如,检查这个).你遇到的问题不在于运行exe,它wkhtml2pdf.exe本身就是特定的东西.该exe GDI+在Windows上使用一堆调用来呈现PDF,这是Azure网站沙箱中不允许的(GDI+调用,不运行exe).
使用WebJob也无济于事,因为WebJobs在与同一个沙箱下的站点相同的上下文中运行.
编辑:
如何在Azure网站上启动外部流程与使用C#正常执行外部流程没有什么特别之处.您面临的问题同样是,wkhtml2pdf.exe而不是启动流程的一般概念.
下面是一个示例,您可以尝试启动cmd.exe并读取stdout上写的内容
var processStartInfo = new ProcessStartInfo()
{
Arguments = "/c echo \"test\"",
FileName = @"c:\windows\system32\cmd.exe",
RedirectStandardOutput = true,
UseShellExecute = false
};
var process = Process.Start(processStartInfo);
using (var streamReader = new StreamReader(process.StandardOutput.BaseStream))
{
ViewBag.MessageFromExe = streamReader.ReadToEnd();
}
Run Code Online (Sandbox Code Playgroud)
ViewBag.MessageFromExe将具有"test"您可以在视图上验证的值,并且您可以在Azure网站中运行该功能
| 归档时间: |
|
| 查看次数: |
3475 次 |
| 最近记录: |