2016-04-27 7 views
5

मैं ड्राइव C:/ से संभाल प्राप्त करना चाहते हैं मैं मिल द्वारा डिस्क से संभाल कर सकते हैं:CreateFile API के साथ विभाजन कैसे खोलें?

HANDLE hd = CreateFile("\\\\.\\PhysicalDrive0", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, 0, OPEN_EXISTING, 0, NULL); 

कैसे डिस्क के विभाजन का उपयोग करने की?

जब इस कोड का उपयोग करें:

HANDLE hd = CreateFile("\\.\C", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, 0, OPEN_EXISTING, 0, NULL); 

और GetLastError() त्रुटि कोड का उपयोग 123.

ERROR_INVALID_NAME

123 (0x7B)

फ़ाइल नाम, निर्देशिका का नाम है , या वॉल्यूम लेबल वाक्यविन्यास गलत है।

माइक्रोसॉफ्ट दस्तावेज़ से: image

लेकिन काम नहीं!

अग्रिम धन्यवाद।

उत्तर

4

वॉल्यूम खोलने के लिए आपको जिस नाम का उपयोग करना चाहिए, वह C: है और सुनिश्चित करें कि बैक स्लेश उचित रूप से बच निकले हैं।

HANDLE hd = CreateFile("\\\\.\\C:", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, 0, OPEN_EXISTING, 0, NULL); 

ध्यान दें कि आप शायद, त्रुटि 5 मिल जाएगा (प्रवेश निषेध) जब तक exe व्यवस्थापक विशेषाधिकारों के साथ चलाया जा रहा है।

+0

नहीं, सही नहीं। आतंक 123! –

+0

@ मोहम्मदmadani ओह, मुझे महसूस करने के लिए एक मिनट लगा कि बैकस्लाश ठीक से बच नहीं पाए थे। उत्तर अपडेट किया गया। – Steve

+0

यह काम करता है। बहुत सारे स्थान हैं –

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