Windows 套接字應用程式的 IPv6 指南
本指南提供您啟用 Microsoft Windows 應用程式使用新一代因特網通訊協定第 6 版 (IPv6) 所需的資訊。 將 IPv6 功能新增至您的應用程式不一定是移植程式。 若要移植應用程式,建議修改程式碼以在不同的平台上運作,這表示讓先前的平台落後。 本指南特別結構化,可協助將 IPv6 功能新增至應用程式,同時保留 IPv4 功能。
本指南討論與新增 IPv6 功能相關的問題,然後以受轉換影響的開發區域為目標。 每個區域都會收到要注意的陷阱、建議避免這些陷阱的策略,以及如何充分利用新的 Windows Sockets 2 程式設計元素(函式和結構)的秘訣。 如需 IPv6 的其他資訊,請參閱 IPv6 支援。
本指南也提供程式碼範例,為您提供修改應用程式時可能會遇到問題的實際操作體驗和可視化表示法。 這些範例來自已修改以支援 IPv4 和 IPv6 之簡單 Windows Sockets 應用程式的完整運作範例。 本文件結尾的兩個附錄包含這些工作範例的原始程式碼: 附錄 A:僅限 IPv4 的原始程式碼 包含應用程式的原始程式碼,然後再修改以支援 IPv6: 附錄 B:IP 版本無從驗證原始程式碼 會在應用程式啟用 IPv6 之後提供原始程式碼。
Microsoft 提供名為 Checkv4.exe 的公用程式,可協助您在應用程式程式代碼中尋找潛在的移植敏感性程序代碼,也提供修正建議。 使用附錄中包含的範例應用程式,以及顯示 Checkv4.exe 公用程式所產生的輸出的螢幕快照,本檔中會示範 Checkv4.exe 公用程式所示範的 Checkv4.exe 公用程式。 如需詳細資訊,請參閱 使用 Checkv4.exe 公用程式。
本指南所解決的程序設計領域如下:
- 變更 IPv6 Winsock Appications 的數據結構
- IPv6 Winsock 應用程式的函數調用
- 使用硬式編碼的IPv4位址
- IPv6 Winsock 應用程式的使用者介面問題
- IPv6 Winsock 應用程式的基礎通訊協定
- IPv6 Winsock 應用程式的雙堆疊套接字
因為沒有統一的事件順序,所以解決 IPv6 啟用問題的區段不會以循序顯著的方式排列,因此您可以隨時參考任何區段。 強烈建議您在將 IPv6 功能新增至應用程式時檢閱每個區段。 建議您閱讀 Checkv4.exe 公用程式的相關信息,因為它包含解決 IPv6 啟用問題順序的秘訣。
若要查看 Checkv4.exe 公用程式,並檢閱您應該在應用程式中處理移植程式的順序,請參閱 使用 Checkv4.exe 公用程式。 本節包含編譯時間旗標的相關信息,該旗標會嚴格檢查與IPv6 不相容的程式設計專案。
若要直接移至範例應用程式,請參閱 附錄 A:僅限 IPv4 的原始程式碼 和 附錄 B:IP 版本無從驗證原始程式碼。