โครงสร้างของWSADATAมีแบบฟอร์มต่อไปนี้:
struct WSAData {
nbsp WORD wVersion
WORD wHighVersion
char szDescription [WSADESCRIPTION_LEN + 1];
char szSystemStatus [WSASYSSTATUS_LEN + 1];
ไม่มีลายเซ็นแบบสั้น iMaxSockets
ไม่มีลายเซ็นแบบสั้น iMaxUdpDg
อักขระไกล * lpVendorInfo
}(&N)
WSADATAโครงสร้างใช้เพื่อเก็บข้อมูลการเตรียมใช้งาน Windows Sockets ที่ส่งกลับ โดยการเรียกไปยังฟังก์ชันAfxSocketInitสากล?
สมาชิก
wVersion
รุ่นของ Windows Sockets สเปคที่ Windows Sockets DLL คาดว่าจะใช้ผู้เรียก?
wHighVersion
รุ่นสูงสุดของ Windows Sockets สเปคที่ DLL นี้สามารถสนับสนุนการ(เข้ารหัสนอกจากนี้ไว้เหนือเป็น) โดยปกตินี้จะเหมือนกับwVersion?
szDescription
สิ้นสุดด้วย null ASCII สตลง Windows Sockets DLL คัดลอกคำอธิบายของการใช้งาน Windows Sockets รวมทั้งรหัสผู้ขาย ข้อความ (ถึง 256 อักขระความยาว) สามารถบรรจุอักขระใด ๆ ได้ แต่เป็นเตือนผู้จัดจำหน่ายรวมถึงการควบคุม และการจัดรูปแบบอักขระ: การใช้มากที่สุดที่โปรแกรมประยุกต์จะวางนี้คือการ แสดง (อาจตัดทอน) ในข้อความสถานะ?
szSystemStatus
สิ้นสุดด้วย null ASCII สตลง Windows Sockets DLL คัดลอกข้อมูลสถานะหรือการกำหนดค่าที่เกี่ยวข้อง Windows Sockets DLL ควรใช้ฟิลด์นี้เฉพาะในกรณีที่ข้อมูลที่อาจเป็นประโยชน์กับผู้ใช้ หรือสนับสนุนเจ้าหน้าที่ มันจะไม่ถือเป็นส่วนขยายของฟิลด์szDescription?
iMaxSockets
จำนวนสูงสุดของ sockets ซึ่งกระบวนการหนึ่งอาจสามารถเปิด การใช้งาน Windows Sockets สามารถให้พู sockets สากลสำหรับการจัดสรรไปยังกระบวนการใด ๆ อีกวิธีหนึ่งคือ มันสามารถปันส่วนทรัพยากรสำหรับแต่ละขั้นตอนสำหรับ sockets หมายเลขสามารถสะท้อนถึงวิธีการที่ Windows Sockets DLL หรือซอฟต์แวร์ระบบเครือข่ายถูกกำหนดด้วย ผู้เขียนโปรแกรมประยุกต์สามารถใช้หมายเลขนี้เป็นน้ำมันการบ่งชี้ว่าเป็นการใช้งาน Windows Sockets ที่ใช้งาน โดยโปรแกรมประยุกต์ ตัวอย่าง การเซิร์ฟเวอร์ X Windows อาจตรวจสอบiMaxSocketsเมื่อเริ่มแรก: ถ้าน้อยกว่า 8 แอพลิเคชันจะแสดงข้อความแสดงข้อผิดพลาดสั่งผู้ใช้เพื่อกำหนดค่าซอฟต์แวร์เครือข่ายได้ (นี่คือสถานการณ์ที่อาจจะใช้ข้อความszSystemStatus ) แน่นอนไม่มีหลักประกันว่า แอพพลิเคชันเฉพาะสามารถปันจริง ๆ ส่วนiMaxSockets sockets เนื่องจากอาจมีโปรแกรมประยุกต์ Windows Sockets อื่น ๆ ในการใช้?
iMaxUdpDg
ขนาดเป็นไบต์ของเดตาแกรม User Datagram Protocol (UDP) ที่ใหญ่ที่สุดที่สามารถส่ง หรือได้รับ โดยที่โปรแกรมประยุกต์ของ Windows Sockets ถ้าไม่มีการจำกัดการใช้งานที่กำหนดไว้ในiMaxUdpDgเป็นศูนย์ ในการใช้งานมากมายของ Berkeley sockets มีข้อจำกัดแบบปริยาย 8192 ไบต์บน UDP datagrams (ซึ่งมีมากถ้าจำเป็น) ที่ใช้งาน Windows Sockets สามารถมีข้อจำกัดตาม ตัวอย่าง การปันส่วนของบัฟเฟอร์ reassembly ส่วน ค่าต่ำสุดของiMaxUdpDgสำหรับใช้งาน Windows Sockets ที่เข้ากันได้คือ 512 หมายเหตุการคำนึงถึงค่าของiMaxUdpDgว่า inadvisable พยายามส่งแกรมออกอากาศซึ่งมีขนาดใหญ่กว่าสูงสุด Transmission Unit (MTU) ของเครือข่าย (Windows Sockets API ไม่มีกลไกการค้นพบ MTU แต่มันต้องไม่น้อยกว่า 512 ไบต์)
lpVendorInfo
ชี้ไกลไปยังโครงสร้างข้อมูลเฉพาะผู้จัดจำหน่าย คำจำกัดความของโครงสร้างนี้ (ถ้าให้มาอยู่นอกเหนือขอบเขตของ Windows Sockets สเปคได้ ดูข้อมูลเพิ่มเติม ข้อควรพิจารณาเกี่ยวกับการเขียนโปรแกรม Windows Socketsในเอกสารประกอบ Win32 SDK?
หมายเหตุnbsp ใน MFC, WSADATAโครงสร้างจะถูกส่งกลับ โดยฟังก์ชันAfxSocketInitซึ่งคุณเรียกในของคุณ InitInstance ฟังก์ชัน คุณสามารถเรียกโครงสร้าง และจัดเก็บไว้ในโปรแกรมของคุณหากคุณจำเป็นต้องใช้ข้อมูลจากนั้นในภายหลัง(&N)?
ดูเพิ่มเติมnbspAfxSocketInit(&N)