XPS ドキュメント ライターに印刷しているアプリケーションの背後にある名前を付けて保存] ダイアログ ボックスが表示されます。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:2567869
現象
次のような状況を考えます。
  • Windows 7 の 64 ビット バージョンで 32 ビット アプリケーションを実行するとします。
  • アプリケーションから Microsoft XPS ドキュメント ライター (MXDW) プリンターに印刷するとします。
このシナリオでは、アプリケーションの背後にある、[名前を付けて保存] ダイアログ ボックスが表示されます。

さらに、次の現象が発生する可能性があります。

  • アプリケーションが応答を停止 (ハング ファイル名を入力するか、印刷タスクをキャンセルするまで) に思われます。
  • 印刷しているアプリケーションは、[名前を付けて保存] ダイアログ ボックスが閉じられたとき (アクティブ) の前面のアプリケーションになります。

<b>別のプリンター ドライバーは、[名前を付けて保存] ダイアログ ボックスまたは別のモーダル ダイアログ ボックスを表示して印刷するとき、この問題を発生も可能性があります。Adobe PDF プリンターのプリンター ドライバーは、このタイプのドライバーです。
原因
プリンター ドライバーは、印刷しているプロセスに読み込まれているダイナミック リンク ライブラリ (Dll) として実装されます。プリンター ドライバーは、32 ビット バージョンの Windows で 32 ビット Dll と 64 ビット バージョンの Windows で 64 ビットの Dll として実装されています。

32 ビット プロセスは、64 ビットの Dll を読み込むことができません。したがって、64 ビット バージョンの Windows は、Splwow64.exe プロセスを 32 ビット プロセスからの印刷をサポートします。Splwow64.exe は、64 ビット プリンター ドライバーをロードして、32 ビット プロセスのための印刷を処理する 64 ビット プロセスです。

アプリケーションは、XPS ドキュメント ライター プリンターに印刷するのにはStartDoc関数を呼び出す、XPS ドキュメント ライターのプリンター ドライバーは、ユーザー名と、XPS ファイルの場所を指定するため、[名前を付けて保存] ダイアログ ボックスを表示します。ダイアログ ボックスのオーナー ウィンドウは、通常、 StartDoc関数を呼び出しているスレッドのアクティブなウィンドウとアクティブ ウィンドウの位置] ダイアログ ボックスが表示されます。

64 ビット バージョンの Windows で 32 ビット アプリケーションがStartDoc関数を呼び出すと、Splwow64.exe プロセスは、32 ビット アプリケーションのための XPS ドキュメント ライターのプリンター ドライバー呼び出します。このシナリオで、[名前を付けて保存] ダイアログ ボックスが所有されている、Splwow64.exe プロセス内のスレッドがアクティブなウィンドウを持っていないためSplwow64.exe プロセスは、フォア グラウンド ウィンドウを設定するアクセス許可を持たないために印刷しているアプリケーションの背後にあるダイアログ ボックスが表示ことがあります。また、ダイアログ ボックスが所有しているため、 StartDoc関数を呼び出したアプリケーションなる可能性がありますいないフォア グラウンド アプリケーション ダイアログ ボックスが閉じられたとき。

StartDocの呼び出しまで応答しません] ダイアログ ボックスを閉じるとアプリケーションが応答を停止すると思われるようにします。

[名前を付けて保存] ダイアログ ボックスに、Windows エクスプ ローラーのタスク バーのボタン、Splwow64.exe プロセスによって作成されている場合これは、ダイアログ ボックスは、所有されていないためにです。Splwow64.exe プロセスが前面のウィンドウを設定できない場合も、タスク バー ボタンが点滅します。
回避策
この問題を回避するには、タスク バーのボタンを [名前を付けて保存] ダイアログ ボックスをアクセスできます。または、ダイアログ ボックスにフォーカスを切り替えるには Alt + タブを押すことができます。
詳細
ソフトウェア開発者は、これらのアプリケーションが XPS ドキュメント ライター プリンターまたは Adobe PDF プリンターをユーザーが印刷するときを検出することにより、32 ビット アプリケーションでこの問題を回避できます。StartDoc関数を呼び出すとき、次に、アプリケーションはDOCINFO.lpszOutput構造体のメンバーでファイルへの完全パスを指定します。プリンター ドライバーでは、ユーザーにファイルを要求する代わりに、指定のファイルを使用します。

この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。明示または黙示にかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。

警告: この記事は自動翻訳されています

プロパティ

文書番号:2567869 - 最終更新日: 08/27/2016 01:59:00 - リビジョン: 5.0

  • kbmt KB2567869 KbMtja
フィードバック