2011-07-10 20 views
5

मैं होस्ट के आईपी पते को पकड़ने के लिए gethostbyname का उपयोग नहीं कर सकता, यह एक बहिष्कृत कार्य है जो केवल विंडोज़ पर फिकन के समय का 10% काम करता है!gethostbyname के लिए वैकल्पिक

मैं अन्य तरीकों पर किसी भी पर्याप्त संसाधन अन्य कार्यों का उपयोग कर एक मेजबान के आईपी पते को खोजने के लिए नहीं मिल सकता है (MSDN getaddrinfo की सिफारिश की है, लेकिन है कि मैं क्या चाहते हैं की तरह प्रतीत नहीं होता।)

+3

यदि आप समझते हैं कि getaddrinfo वह नहीं है जो आप चाहते हैं तो यह उपयोगी उत्तर पाने की संभावनाओं में सुधार कर सकता है। –

उत्तर

9

वास्तव में, getaddrinfo तुम क्या है चाहते हैं। यह करने के लिए यह एक लंबा रास्ता तय करने वाला तरीका है, इस तथ्य का जिक्र नहीं करना कि कभी-कभी कई आईपी पते पाए जाते हैं (उदाहरण के लिए एक आईपीवी 4 पता और एक आईपीवी 6 पता)। मैं Beej's Guide to Network Programming को देखने की अनुशंसा करता हूं।

7

आप WSAConnectByName तरह बातें की कोशिश कर सकते हैं, लेकिन वास्तव में getaddrinfo यहाँ है कि आप क्या चाहते, simple example है।

1

आप gethostbyname2 का उपयोग कर सकते हैं जो आईपीवी 4 और आईपीवी 6 दोनों का समर्थन करता है।
यह article है जो gethostbyname और getaddrinfo के बीच अंतर दिखाता है, यह gethostbyname2 पर भी चर्चा करता है।

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