徵兆
請試想下列案例:
-
你建立一個基於以下 Microsoft .NET Framework 版本之一的 Windows Forms 應用程式:
-
Microsoft .NET Framework 2.0
-
Microsoft .NET Framework 3.0
-
Microsoft .NET Framework 3.5
-
-
你可以使用 PrintDialog 類別來顯示一個列印對話框,方便在應用程式中列印。
-
你在對話框中勾選 Collate 勾選框。注意:你也可以程式化設定 PrintDialogObject。PrinterSettings。將 Collate 設為 true。
在這種情況下,彙整設定無法運作。 舉例來說,假設你嘗試列印一份兩頁文件的兩份副本。 啟用整理設定時,頁面應依以下順序列印:
第1頁 第2頁 第1頁 第2頁 然而,頁面印刷順序如下:
第 1頁 第 1頁 第 2頁 第 2 頁 注意 此問題在 Windows XP 或 Windows Server 2003 中不會發生。
原因
問題發生在 Windows Forms 應用程式關閉列印對話框後,從錯誤位置讀取印表機設定資料。
解決方案
熱修正資訊
Microsoft 現在已經支援熱修補程式。 然而,本文僅旨在修正本文所描述的問題。 只應用在遇到這個特定問題的系統上。要解決此問題,請聯絡 Microsoft 客服以取得熱修補程式。 欲查閱完整的 Microsoft 客服電話及支援費用資訊,請造訪以下 Microsoft 網站:
http://support.microsoft.com/contactus/?ws=support注意:在特殊情況下,若 Microsoft 支援服務專業人員認定特定更新能解決您的問題,通常會因客服電話產生的費用被取消。 一般來說,如果有所描述之特定更新無法解決的其他支援問題,才會收取支援費用。
先決條件
要套用此熱修補,您必須在執行以下作業系統之一的電腦上安裝 .NET Framework 2.0、.NET Framework 3.0 或 .NET Framework 3.5:
-
Windows Vista 服務包 2 (SP2)
-
Windows Server 2008 服務包 2 (SP2)
-
Windows 7
-
Windows 7 服務包 1 (SP1)
-
Windows Server 2008 R2
-
Windows Server 2008 年 R2 服務包 1 (SP1)
重新啟動需求
如果安裝時有受影響的檔案,你必須在套用這個熱修補後重新啟動電腦。 我們建議您在安裝此熱修補前,關閉所有鎖定或使用受影響檔案的 .NET Framework 應用程式。
Hotfix 取代資訊
這個熱修補並不取代先前釋出的熱修補。
檔案資訊
此熱修補的全域版本包含以下表格中列出的檔案屬性 (或更新的檔案屬性) 。 這些檔案的日期和時間是以 Coordinated Universal Time (UTC) 表示。 當您檢視檔案資訊時,它會轉換為當地時間。 若要查看 UTC 與當地時間的差異,請使用 [控制台] 中 [日期和時間] 項目的 [時區] 索引標籤。
適用於 Windows Vista 與 Windows Server 2008
適用於所有支援的基於 x86 的 Windows Server 2008 與 Windows Vista 版本
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
10:58 |
x86 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
10:58 |
x86 |
適用於所有支援的 x64 版本的 Windows Server 2008 與 Windows Vista
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
10:59 |
x64 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
10:59 |
x64 |
適用於所有支援的 IA-64 版本 Windows Server 2008
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
10:52 |
IA-64 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
10:52 |
IA-64 |
適用於 Windows 7 與 Windows Server 2008 R2
適用於所有支援的 x86 版本 Windows 7
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
10:59 |
x86 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
10:59 |
x86 |
適用於所有支援的 x64 版本 Windows 7 和 Windows Server 2008 R2
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
10:59 |
x64 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
10:59 |
x64 |
適用於所有支援的 IA-64 版本 Windows Server 2008 R2
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
10:52 |
IA-64 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
10:52 |
IA-64 |
Windows 7 SP1 和 Windows Server 2008 R2 SP1
適用於所有支援的 x86 版本 Windows 7 SP1
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
1,103 |
x86 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
1,103 |
x86 |
針對所有支援的 x64 版本的 Windows 7 SP1 及 Windows Server 2008 R2 SP1
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
11:02 |
x64 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
11:02 |
x64 |
針對所有支援的基於 IA-64 的 Windows Server 2008 R2 SP1 版本
|
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
Time |
Platform |
|---|---|---|---|---|---|
|
System.Design.dll |
2.0.50727.5734 |
5,062,656 |
2012年8月22日 |
1,055 |
IA-64 |
|
System.windows.forms.dll |
2.0.50727.5734 |
5,025,792 |
2012年8月22日 |
1,055 |
IA-64 |
狀態
Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。
其他相關資訊
以下描述了安裝熱修正前後行為的變化。 例如,你建立一個包含以下程式碼的 Windows Forms 應用程式:
PrintDialog pd = new PrintDialog();pd.PrinterSettings.Copies = 2;pd.PrinterSettings.Collate = true;pd.ShowDialog();
下表顯示 列印對話框 出現並關閉後,彙整設定是否被設為 true。安裝這個熱修補程式之前
|
印表機 |
PrintDialog.UseEXDialog 屬性設為 false |
PrintDialog.UseEXDialog 屬性設定為 true。 |
|
XPS 作家 |
行為依作業系統而異 |
Collate 設定為 false |
|
實體印表機 |
Collate 設定為 false |
Collate 設定為 false |
安裝這個熱修補程式後
|
印表機 |
PrintDialog.UseEXDialog 屬性設為 false |
PrintDialog.UseEXDialog 屬性設定為 true。 |
|
XPS 作家 |
行為依作業系統而異 |
將 Collate 設定為 true。 |
|
實體印表機 |
將 Collate 設定為 true。 |
將 Collate 設定為 true。 |
參考
欲了解更多關於 PrintDialog.PrinterSettings 屬性的資訊,請造訪以下 MSDN 網站:
關於 PrintDialog.PrinterSettings 屬性的一般資訊欲了解更多關於 列印 對話框的資訊,請造訪以下 MSDN 網站: