ループ構造について

解決


チロル  2005-01-12 21:55:35  No: 118802

ループ構造について質問です。

ShellExecuteEX関数でPDFファイルを関連付け印刷を行い(、
EnumJobs関数で印刷ジョブを確認して、印刷ジョブがあれば、
次のPDFファイルを印刷しようとしています。

下のコード中のPDF_Print関数はShellExecute関数を実行し、
GetPrinterDocJobs関数はEnumJobs関数等を実行して確認を行っています。

その際、Do〜Loopで一回、EnumJobs関数を実行した後、
次のファイルの印刷へ移ってしまいます。
For〜Next、Do〜Loopの使用方法として、間違っているのでしょうか?

For i = 0 To XX
    PrintCheck = False
   
    'ShellExecuteEX関数で関連付け印刷
    Ret = PDF_Print(Path(i), Me.hwnd)
    
    'EnumJob関数等で印刷ジョブを確認
    Do
        PrintCheck = GetPrinterDocJobs(Path(i))
    Loop While PrintCheck = True
Next i


特攻隊長まるるう  2005-01-12 22:03:49  No: 118803

Debug.Print 入れてデバッグすりゃいい事をなんで質問する?
デバッグは自分でして下さい。
>For〜Next、Do〜Loopの使用方法として、間違っているのでしょうか?
ヘルプを読んで下さい。ここで回答を得るよりちゃんと
説明してくれてます。


いな  2005-01-12 22:29:21  No: 118804

>>For〜Next、Do〜Loopの使用方法として

For〜Next、Do〜Loopの使用方法に限定して言うならば間違っていないです。

間違っているとすれば処理の流れです。


ちろる  2005-01-12 23:38:06  No: 118805

特攻隊長まるるう様、いな様、早速の対応、ありがとうございます。

>間違っているとすれば処理の流れです。
お恥ずかしい限りです。

Do〜Loopの使用方法を間違っていたようです。
Whileではなく、Untilですね。

ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加