特定のプリンターのデフォルトで選択された印刷トレイを変更できる必要があります。これを行うための VC++/win32 コードを持っている人はいますか?
問題が発生した場合は、プリンターのデフォルト設定を変更する必要があると思います。当社の印刷ジョブは当社以外のアプリケーションによって実行されるため、当社のアプリケーション内から発生する印刷操作のコンテキストでこのような変更を行うことはできません。別のアプリケーションでデフォルトの印刷設定を変更する方法がない限り、プリンターのユーザーのデフォルトを変更し、印刷ジョブを開始してから、デフォルトを元の値に戻すという作業に行き詰まっていると思います。
現在のユーザーに対してのみデフォルトを変更し、特別な UAC 昇格などを必要としないことを本当に望んでいます...
この MSDN 記事に示されているものと同様のものを使用し、DEVMODE 構造体 (dmDefaultSource または dmFormName、またはその両方) にフィールドを設定する必要があると思われます。
テイカーはいますか?または、誰かが共有したい落とし穴がありますか?
編集: DEVMODE ドキュメントDEVMODE ドキュメントへのリンクは次のとおりです。
編集:特定のプリンターに固有のものではなく、一般的な解決策を探していることも指摘しておく必要があります(非常に多くの環境に展開しています)