.NET Frameworkの印刷不具合について

不具合というか、バグ。
これのせいで時間を浪費してしまったので、同じ状況の人の手助けになれば幸いです。

■症状
.NET Frameworkを利用したソフトウェアで印刷したときに印刷設定が反映されない。
(場合によっては印刷そのものが出来ない可能性も?)

デフォルトプリンタで設定変えずに印刷するのは(多分)問題無いけれど、印刷ダイアログ画面の詳細設定とかから印刷設定変更しても設定情報が反映されずに普通に印刷される。

プリンタドライバ等によって機能は異なるだろうけど、大体以下の様な設定変更が無効化される。

・2in1印刷(集約印刷)
・両面印刷
・拡大、縮小印刷
・給紙方法(手差し印刷、用紙トレイの指定)

.NET Frameworkを利用しない印刷(メモ帳やOffice製品等の印刷)は影響なし


■原因
Windows UpdateMS12-025(KB2671605)を適用すると発生。


■対応策
以下のいずれかを選択。

1.下記サイトから必要なパッチを適用する(組み合わせは後述)
 http://support.microsoft.com/kb/2671605/ja

2.MS12-025を削除する(非推奨)
 上記セキュリティ更新プログラムは【緊急】なので削除はお勧めできませぬ。

3.Windows Updateで適切なパッチが配布されるのを待つ

4.印刷しない


■対応No.1で適用するパッチの組み合わせ
該当OSと利用しているFrameworkのバージョンによって適用するパッチが異なります。
・・・が、パッと見わかりにくかったので必要な部分だけ抜粋して簡単にまとめました。

.NET Framework複数バージョン導入している可能性が高いので、よく分からない人は自分のOSが記載されているのをすべて適用してみれば良いんじゃないでしょうか。
未検証なのでどうなるか分からないけど、おそらく無関係なのはインストール時に対象外としてエラーになるんじゃないかと。

ちなみに、該当しないパターンについてはまだパッチが無いのか、無視されているのか、他のパッチで代用出来るのか不明。


・パターン1(XPを使っている人は適用推奨)
 OS:XP、2003
 .NET Framework:2.0 SP2
 http://support.microsoft.com/kb/2702327

・パターン2(新しいソフトを使っている人は適用推奨)
 OS:XP、Vista、7、2003、2008、2008 R2
 .NET Framework:4
 http://support.microsoft.com/kb/2702328

・パターン3(Win8の人柱向け)
 OS:Windows 8 Consumer Preview、Windows Server 8 Beta
 .NET Framework:4.5
 http://support.microsoft.com/kb/2705003

・パターン4(Framework 4.5の人柱向け)
 OS:7、7 SP1、2008 R2、2008 R2 SP1、2008 SP2
 .NET Framework:4.5 Beta
 http://support.microsoft.com/kb/2705004

・パターン5(Win8の人柱向け)
 OS:Windows 8 Consumer Preview、Windows Server 8 Beta
 .NET Framework:3.5
 http://support.microsoft.com/kb/2705009

・パターン6(Vistaを使っている人は適用推奨)
 OS:Vista SP2、2008 SP2
 .NET Framework:2.0 SP2
 http://support.microsoft.com/kb/2705622

・パターン7(Win7を使っている人は適用推奨)
 OS:7、2008 R2
 .NET Framework:3.5.1
 http://support.microsoft.com/kb/2705623

・パターン8(Win7 SP1を使っている人は適用推奨)
 OS:7 SP1、2008 R2 SP1
 .NET Framework:3.5.1
 http://support.microsoft.com/kb/2705624

・パターン9(古いソフトを使っている人は適用推奨)
 OS:XP、Vista、2003 (64 ビット版または Itanium 版)、2008
 .NET Framework:1.1 SP1
 http://support.microsoft.com/kb/2712189


■その他

ミドルウェアでも.NET Frameworkベースなら同じ現象が発生する模様。

参考:Grape Cityのテクニカルサポート
印刷設定が反映されない問題(Microsoftセキュリティ更新プログラム[MS12-025]に関する弊社.NET製品の影響)について
http://www.grapecity.com/tools/support/technical/knowledge_detail.asp?id=32272