0

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 が無制限または停止しないために実行をトリガーした後、変換が失敗したようです。

4

0 に答える 0