32 位元應用程式不能使用 NetBIOS API 以接收執行 64 位元版本的 Windows Vista 的電腦上的資料

文章翻譯 文章翻譯
文章編號: 940480 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

徵狀

您正在執行 64 位元版本的 Windows Vista 的電腦上執行 32 位元應用程式。應用程式會使用 NetBIOS API,透過網路進行通訊。在這個 Windows 上 Windows 64 (WOW64) 環境中,32 位元應用程式可以開啟一個連接,並且可以傳送資料。不過,應用程式無法使用 NetBIOS API 來接收資料。

例如 32 位元應用程式成功提出呼叫一個 NCBSEND 命令。不過,NCBRECVANY 命令無法正確地接收資料。

附註 在下列案例中,不會發生這個問題:
  • 您在 32 位元版本的 Windows Vista 中執行 32 位元應用程式。
  • 您編譯為 32 位元應用程式到 64 位元應用程式的程式碼。然後,您會在 64 位元版本的 Windows Vista 中執行 64 位元應用程式。

發生的原因

原因是 NetBIOS 介面驅動程式 (NetBIOS.sys) 中發生錯誤,就會發生這個問題。當 NetBIOS 介面驅動程式正在接收資料時,驅動程式有時並不會轉換網路連線區 (NCB) 結構從 64 位元版本為 32 位元的版本。因此,32 位元應用程式不能瞭解 NCB 結構。

解決方案

服務套件資訊

如果要解決這個問題,取得最新的 Service Pack 的 Windows Vista。如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
935791如何取得最新的 Windows Vista Service Pack

Hotfix 資訊

Microsoft 提供支援的 Hotfix。不過,此 Hotfix 旨在修正本文中所述隨問題。只會發生此特定問題的系統套用此 Hotfix。這個 Hotfix 可能會接受額外的測試。因此,如果您不會嚴重影響這個問題,我們建議您等候下一個包含此 Hotfix 的軟體更新。

如果此 Hotfix 可供下載,您可在本知識庫文件的頂端找到「 可用的 Hotfix 下載 」區段。如果本節 Does Not Appear 請連絡[ Microsoft 客戶服務 ] 和 [ 支援 ] 以取得此 Hotfix。

附註如果發生其他問題,或如果需要任何疑難排解,您可能必須建立個別的服務要求。和此 Hotfix 無關的額外支援問題適用一般的支援費用。如需 Microsoft 客戶服務支援部門電話號碼的完整清單或要建立個別的服務要求,請造訪下列 Microsoft 網站:
http://support.microsoft.com/contactus/?ws=support
附註「 下載 Hotfix 」 表單會顯示此 Hotfix 會出現,以供使用的語言。如果您沒有看到您的語言,是因為此 Hotfix 是不適用您的語言。

必要條件

沒有先決條件都是必要的。

重新啟動需求

您必須套用此 Hotfix 之後重新啟動電腦。

Hotfix 取代資訊

此 Hotfix 不會取代任何先前發行的 Hotfix。

登錄資訊

若要使用其中一個 Hotfix 此套件中,並不需要對登錄進行任何變更。

檔案資訊

此 Hotfix 的英文版在檔案屬性 (或更新版本的檔案屬性) 如下列表格中所列。這些檔案的日期和時間為 Coordinated Universal Time (UTC)。當您檢視檔案資訊時,會將它轉換為當地時間。若要到 UTC 與當地時間差異使用在 [日期及時間 中項目控制台中的 [時區] 索引標籤]。
Windows Vista 64 位元版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Amd64_80c93bbf8c8995c186c3c6d21846afbf_31bf3856ad364e35_6.0.6000.20586_none_2dc90416d0a47dd4.manifest不適用7132007 年四月 26 日15: 58不適用
Amd64_afc0ea3989214a77de4de8072cfc378b_31bf3856ad364e35_6.0.6000.20586_none_20cc73e1c3b56f6c.manifest不適用7112007 年四月 26 日15: 58不適用
Amd64_microsoft-視窗-驗證-authui_31bf3856ad364e35_6.0.6000.20586_none_6664f54fc9f7df4a.manifest不適用59,4162007 年四月 26 日16: 04不適用
Package_1_for_kb936460 ~ 31bf3856ad364e35 ~ amd64 ~ ~ 6.0.1.0.mum不適用1,8002007 年四月 26 日15: 58不適用
Package_2_for_kb936460 ~ 31bf3856ad364e35 ~ amd64 ~ ~ 6.0.1.0.mum不適用2,0192007 年四月 26 日15: 58不適用
Update.mum不適用1,9092007 年四月 26 日15: 58不適用
Authui.dll6.0.6000.205862,270,7202007 年四月 26 日04: 14x64

狀況說明

Microsoft 已確認<適用於>一節所列之 Microsoft 產品確實有此問題。 這個問題已經先在 Windows Vista Service Pack 1 中獲得修正。

其他相關資訊

在 Windows 64 (WOW64) 上的 Windows 是可以讓 32 位元 Windows 架構應用程式在 64 位元 Windows 作業系統上執行的相容性環境。

如 Windows Server 2003 中相同的問題的更多有關,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
94007432 位元應用程式無法使用 NetBIOS API 來接收執行 64 位元版的 Windows Server 2003 的電腦上的資料
如需有關軟體更新術語的詳細資訊,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
824684用來描述 Microsoft 軟體更新標準術語的說明

屬性

文章編號: 940480 - 上次校閱: 2008年5月19日 - 版次: 3.1
這篇文章中的資訊適用於:
  • Windows Vista 商用進階 64 位元版
  • Windows Vista 家用進階 64 位元版
  • Windows Vista 旗艦 64 位元版
  • Windows Vista 商用入門 64 位元版
關鍵字:?
kbmt kbautohotfix kbvistasp1fix kbfix kbexpertiseadvanced kbpubtypekc kbqfe kbhotfixserver KB940480 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:940480
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com