[WR3.1] スレッドでの印刷について

HOME › フォーラム › 旧サポート掲示板 › [WR3.1] スレッドでの印刷について

  • このトピックは空です。
3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • 投稿者
    投稿
  • #247
    山本
    ゲスト

    スレッドにて下記の操作をしています。
     WR3AXCL1 は 呼び出しているダイアログに貼り付けてあります。

    WaxPreview: WRPreview;
    WaxPDF: WRPDFFile;
    waxReport : WRReport;
    waxPrinter : WRPrinter;
    この4つはユニットのvarに記述してあります。

    procedure TPrintThread.Execute;
    var
    i: Integer;
    begin
    for i := 0 to 9999 do
    begin
    if Terminated then
    Break;
    waxReport := MakeOVLReport(FileName, PageList);
    // MakeOVLReportはwaxReport を作成するファンクションです。

    waxPrinter := PrintDlgF.WR3AXCL1.CreatePrinter(PrintName);
    with waxPrinter do
    begin
    Bin := EXEini.ReadInteger(BinNumber);
    UpdateInfo;
    CancelDlg := False;
    OpenPrinter(Self.Handle);
    ReportPrint(waxReport);
    ClosePrinter(True);
    Delete;
    end;
    end;
    end;

    メインのプログラムからスレッドを呼び出すと止まってしまいます。
    (開発したPCではIDE上・実行ファイルともに動きます)
    どこかおかしい部分はあるでしょうか?

    同じ処理でPDFは正常に作成されます。
    procedure TPrintThread.Execute;
    var
    i: Integer;
    begin
    for i := 0 to 9999 do
    begin
    if Terminated then
    Break;
    waxReport := MakeOVLReport(FileName, PageList);
    if i = 0 then
    begin
    WaxPDF := PrintDlgF.WR3AXCL1.CreatePDF;
    WaxPDF.OpenPDFFile(FileName), True);
    end;
    WaxPDF.ReportPrint(waxReport);
    end;
    end;

    プレビューも正常に表示します。

    procedure TPrintThread.Execute;
    var
    i: Integer;
    begin
    for i := 0 to 9999 do
    begin
    if Terminated then
    Break;
    waxReport := MakeOVLReport(FileName, PageList);
    Synchronize(PreviewWrite);
    end;
    end;

    procedure TPrintThread.PreviewWrite;
    begin
    WaxPreview.ReportPrint(waxReport);
    waxReport.Delete;
    end;

    印刷処理のみ正常に動作しません。

    よろしくお願いいたします

    #248
    伊藤@ソフトウィング
    ゲスト

    日頃より弊社製品をご利用いただきまして、誠にありがとうございます。

    ご使用されています環境(ご使用OS、ご使用開発言語とバージョン等)をお知らせ頂けますでしょうか?

    ご使用されていますモジュール(ウィングレポート、ご使用開発言語)は、最新でしょうか?

    又、こちらで動作確認を行いたいのですが、差し支えなければプロジェクトをサポート宛(Support@swg.co.jp)に送付して頂けませんでしょうか?

    以上、宜しくお願い致します。

    #249
    山本
    ゲスト

    [解決しました]
    OpenPrinter(Self.Handle);
    でのスレッドのハンドルを取得しようとしていたので、
    ゼロに変えたところ印刷しました。
    お騒がせしてすみません。
    ありがとうございました。

3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • フォーラム「旧サポート掲示板」には新規投稿および返信を追加できません。