wkhtmltopdf.exe ファイルを使用して、asp.net Web アプリケーションから PDF ファイルを作成しています。ただし、残念ながら、特定のファイルについては、プロセスが無制限に実行され続け、アプリケーションがフリーズします。しかし、コマンドプロンプトを使用して変換できたのと同じhtmlファイル。asp.net から変換するときに、html のファイル サイズに制限があるのではないでしょうか? それは...ですか?
同じ URL からの他のファイルは、コンバーターを使用して問題なく動作します。しかし、特定の大きなファイルはasp.netから失敗しました。これは私のコードです
Dim fileContent As Byte() = Nothing
Dim process As New System.Diagnostics.Process()
process.StartInfo.UseShellExecute = False
process.StartInfo.CreateNoWindow = True
'set the executable location
process.StartInfo.FileName = Path.Combine(Server.MapPath("~/bin/"), "wkhtmltopdf.exe")
'set the arguments to the exectuable
' wkhtmltopdf [OPTIONS]... <input fileContent> [More input fileContents] <output fileContent>
process.StartInfo.Arguments = "--margin-top 20 --margin-bottom 20 " + url + " d:\ssss\output.pdf"
process.StartInfo.RedirectStandardOutput = True
process.StartInfo.RedirectStandardError = True
process.StartInfo.RedirectStandardInput = True
'run the executable
process.Start()
'Dim output As String = process.StandardOutput.ReadToEnd()
'Dim buffer As Byte() = process.StandardOutput.CurrentEncoding.GetBytes(output)
'wait until the conversion is done
process.WaitForExit()
' read the exit code, close process
Dim returnCode As Integer = process.ExitCode
process.Close()
WaitForExit が無制限または停止しないために実行をトリガーした後、変換が失敗したようです。