सी # System.IO.DriveInfo
में संपत्ति DriveType
है।किस प्रकार का ड्राइव "NoRootDirectory" है (System.IO.DriveType.NoRootDirectory)?
public enum DriveType
{
Unknown = 0,
//
// Summary:
// The drive does not have a root directory.
NoRootDirectory = 1,
Removable = 2,
Fixed = 3,
Network = 4,
CDRom = 5,
Ram = 6,
}
मुझे लगता है कि यह एक ड्राइव अक्षर के बिना एक मात्रा है:
System.IO.DriveType
एक enum है। लेकिन उपयोग:
System.IO.DriveInfo.GetDrives();
ड्राइव अक्षर के बिना मेरी मात्रा सूचीबद्ध नहीं करता है।
NoRootDirectory
किसी अन्य प्रकार के वॉल्यूम/ड्राइव के लिए उपयोग किया जाता है या System.IO.DriveInfo.GetDrives()
बस उन्हें नहीं दिखाता है?
मुझे पता है कि यह असाइन किए गए ड्राइव अक्षरों के लिए उपयोग किया जाता है। आप निश्चित रूप से उन्हें 'GetDrives' के माध्यम से नहीं प्राप्त करेंगे, लेकिन 'नई प्रणाली.आईओ.ड्राइवइन्फो ("बी:")। ड्राइव टाइप या ऐसा करने का प्रयास करें। इसका उपयोग गैर-स्वरूपित विभाजन (या अज्ञात फाइल सिस्टम) के लिए भी किया जा सकता है, लेकिन मुझे पूरी तरह से यकीन नहीं है (आपको यह जांचना होगा कि आपको उस मामले में 'अज्ञात' या 'NoRootDirectory' मिलता है)। पूर्णता के लिए, आप 'HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ सत्र प्रबंधक \ DOS डिवाइस' पर जाकर कचरा ड्राइव भी बना सकते हैं और उदाहरण के लिए '\ Device \ Null' पर इशारा करते हुए ड्राइव' एक्स: 'बना सकते हैं और देख सकते हैं कि आपको क्या मिलता है उन लोगों के लिए। – CherryDT
असल में, [अंतर्निहित WinAPI फ़ंक्शन 'GetDriveType'] के लिए प्रलेखन (https://msdn.microsoft.com/en-us/library/windows/desktop/aa364939 (v = vs.85) .aspx) थोड़ा सा है साफ। यह कहता है: "रूट पथ अमान्य है; उदाहरण के लिए, निर्दिष्ट पथ पर कोई वॉल्यूम नहीं है।" – CherryDT
मैं "रूट पथ अमान्य है" के रूप में अनुवाद करता हूं "कर्नेल पथ' \ DosDevices \ X: 'पथ के लिए अनुरोध को हल करने में सक्षम वैध फाइल सिस्टम निर्देशिका ऑब्जेक्ट को हल/लिंक नहीं करता है। - शायद विंडोज कर्नेल ज्ञान के साथ किसी के द्वारा वाक्य लिखा गया था। इस मामले में मुझे लगता है कि उपरोक्त से मेरा "कचरा ड्राइव" आपको यह मूल्य भी देगा, साथ ही साथ किसी भी असाइन किए गए ड्राइव अक्षरों को भी देगा। – CherryDT