1

私はこの問題に何日も苦労しており、可能な解決策を高低で検索しましたが、何も見つかりません。

私の問題は、ASP Web サイトから Delphi でコンパイルした .exe プログラムを実行しようとしていることです。Delphi プログラムは、いくつかのメタデータを含む PDF レポートを生成し、特定のフォルダーに保存します。

ウェブサイトにアクセスして、プログラムを開始するはずのボタンをクリックすると、プログラムがサーバー上で開始されます (タスク マネージャーで確認できます) が、本来の目的を実行しません。タスクマネージャーでプロセスを終了すると、WebサイトはWaitForExitのままハングします(プログラムが実行されずに終了するため)、Webサイトはプログラムが終了したというフィードバックを受け取り、本来の処理を続行します...

exeを実行するために呼び出すコードは次のとおりです。

試す {

        System.Diagnostics.Process process = new System.Diagnostics.Process();
        process.StartInfo.FileName = "C:\\inetpub\\wwwroot\\WILMA\\DailyRep.exe";
        //start and wait for the exe the run to completion
        process.Start();
        process.WaitForExit();
        //send the .pdf to the user

        Response.ClearContent();
        Response.AddHeader("Content-disposition", "attachment; filename=" + "Daily_Report.pdf");
        Response.ContentType = "application/pdf";
        Response.TransmitFile("C:\\inetpub\\wwwroot\\WILMA\\DailyRep.pdf");
        Response.End();
    }
    catch (Exception ex)
    {

        //throw;
    }

プログラムは、ユーザーが詳細などを追加する必要はありません。実行するだけで、pdf を生成して終了します。

私はすでに適切なセキュリティ権限とすべてを設定していますが、明らかに何かが欠けています...

どんな助けやアイデアも大歓迎です。

どうもありがとう!

4

0 に答える 0