2012-07-15 13 views
10

मैं विजुअल सी ++ 2010 में एक प्रोजेक्ट संकलित कर रहा हूं, लेकिन मुझे कुछ विंसॉक रीडिफिनिशन के साथ समस्याएं हैं।विंसॉक रीडिफिनिशन त्रुटियां

सबसे पहले मैं:

syntax error : identifier 'SOCKADDR_STORAGE' 

लेकिन अगर मैं विनसॉक या Winsock2 या ws2tcpip शामिल मैं इस तरह के कई त्रुटियाँ मिलती है:

error C2011: 'sockaddr' : 'struct' type redefinition 
error C2011: 'WSAData' : 'struct' type redefinition 
error C2011: 'linger' : 'struct' type redefinition 
+0

क्या आप कोड नमूना पोस्ट कर सकते हैं? '#Dfine WIN32_LEAN_AND_MEAN' – ctor

+0

जोड़ने का प्रयास करें आइए अपमानजनक मॉड्यूल से' # शामिल 'ब्लॉक देखें। – wallyk

+0

मेरे पास कोई फैंसी शामिल नहीं है, मेरे पास ये // # शामिल हैं # शामिल // # मुझे कुछ .cpp फ़ाइलों में शामिल करना होगा। – Cooker

उत्तर

20

आपका समस्या यह है कि Windows.h शामिल कर, आप कर रहे हैं winsock.h भी पहले से ही शामिल है। यह यहाँ है आपकी समस्या winsock2.h या ws2tcpip.h सहित आप अतिरिक्त सामान है कि Windows.h

के साथ आता है की एक बहुत कुछ शामिल करने से संकलक रोक शामिल winsock.h

में परिभाषाओं में से कुछ को फिर से परिभाषित करने का प्रयास करेंगे अपने Windows.h से पहले #define WIN32_LEAN_AND_MEAN का उपयोग करके के रूप में पैदा होती है

संबंधित मुद्दे