2011-03-25 5 views
5

से कम जब WriteFile बुला लौटे lpNumberOfBytesWritten कभी तुल्यकालिक राइट मोड जहां एक त्रुटि हुई नहीं किया है (वापसी TRUE है) में nNumberOfBytesToWrite की तुलना में कम हो सकता है? लेखन एक उचित फ़ाइल (सॉकेट, पाइप, या अन्य विशेष संभाल नहीं) के लिए किया जाता है। lpOverlapped का उपयोग नहीं किया जाता है।WriteFile lpNumberOfBytesWritten nNumberOfBytesToWrite

यह docs से पूरी तरह स्पष्ट नहीं है।

+1

क्या 'WriteFile' वापस' TRUE' था ?? – sbi

+0

मान लें कि कोई त्रुटि नहीं होती है, इसलिए हाँ, यह 'TRUE' लौटाता है। –

उत्तर

5

प्रलेखन राज्यों:

WriteFile समारोह रिटर्न जब निम्नलिखित शर्तों के एक होते हैं:

  • अनुरोध किया बाइट की संख्या लिखा है।
  • एक पठन ऑपरेशन पाइप के पढ़ने के अंत में बफर स्पेस जारी करता है (यदि लिखना अवरुद्ध था)। अधिक जानकारी के लिए, पाइप्स अनुभाग देखें।
  • एक असीमित संभाल का उपयोग किया जा रहा है और लेखन असीमित रूप से होता है।
  • एक त्रुटि होती है।

केवल इनमें से पहला एक अपने मानदंडों को पूरा करती तो जवाब है कि प्रलेखन स्पष्ट *lpNumberOfBytesWritten है जब समारोह जब आपके निर्देशानुसार बुलाया रिटर्न हमेशा समान nNumberOfBytesToWrite करना है।

+0

तो lpNumberOfBytesWritten का उद्देश्य क्या है? यह बेकार लगता है। – Jruv

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