NETWORK SERVICE アカウントで .NET 3.5 サイトを実行している実稼働サーバー (win 2008 64 ビット) で、突然エラー ログに次のメッセージが表示されます。私のアカウントの下の wkhtmltopdf.exe (または SYSTEM アカウントの下で、ここで説明されている使用方法 - http://geek.hubkey.com/2008/02/impersonating-built-in-service-account.html ) - 正常に動作します。すべてのソフトウェアはライセンスされており、しばらく (数週間) サーバーに新しいものをインストールしていません。
wkhtmltopdf.exe を呼び出してページから PDF を生成すると、例外がスローされます。
ここで何が問題なのかを知る方法を知っている人はいますか?
スタックトレースは次のとおりです。
[Win32Exception (0x80004005): Windows cannot open this program because the license enforcement system has been tampered with or become corrupted]
System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo) +614
System.Diagnostics.Process.Start() +56
KPI.DownloadWoordenschatTest() in ..\KPI.aspx.cs:1579
KPI.btnLogin5_Click(Object sender, EventArgs e) in ..\KPI.aspx.cs:1451
KPI.Page_Load(Object sender, EventArgs e) in ..\KPI.aspx.cs:109
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +50
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627
問題が報告されているコード スニペットを次に示します。
Process pdfConverterProcess = new Process();
pdfConverterProcess.StartInfo.FileName = Server.MapPath("~/bin/wkhtmltopdf.exe");
pdfConverterProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
pdfConverterProcess.StartInfo.Arguments = String.Format(@" ""{0}"" ""{1}"" --header-html ""{2}&np=1"" --footer-html ""{3}&np=1"" --margin-top 2.5cm --header-spacing 7", requestUrl, filePath, pdfHeaderURL, pdfFooterURL);
pdfConverterProcess.Start(); (this is line 1579)
pdfConverterProcess.WaitForExit();
pdfConverterProcess.Close();