मैं कैसे निर्धारित कर सकता हूं कि मेरे पास इंट्रानेट में रिमोट मशीन पर लिखने की अनुमति है # सी।मैं प्रोग्रामेटिक रूप से कैसे निर्धारित कर सकता हूं कि मेरे पास .N # में C# का उपयोग करके लिखने के विशेषाधिकार हैं या नहीं?
उत्तर
सरल उत्तर यह कोशिश करना और देखना होगा। विंडोज सुरक्षा एपीआई दिल की बेहोशी के लिए नहीं हैं, और संभव है कि अनुमतियां देखने की अनुमति के बिना आपके पास लेखन अनुमति हो!
इस मंच पोस्ट को देखें।
http://bytes.com/forum/thread389514.html
यह एक फ़ाइल के लिए एसीएल अनुमतियों की एक सूची प्राप्त करने के लिए System.Security.AccessControl नाम स्थान में वस्तुओं का उपयोग कर का वर्णन है। यह केवल .NET 2.0 और उच्चतर में उपलब्ध है। मुझे लगता है कि यह भी मानता है कि आपके पास एक एसएमबी नेटवर्क है। मुझे यकीन नहीं है कि यदि आप एक गैर-विंडोज नेटवर्क का उपयोग कर रहे थे तो यह क्या करेगा।
यदि आप .NET 2.0 या उच्चतर पर नहीं हैं, तो यह सामान्य pInvoke और Win32 API जैज़ है।
स्कॉटकून विंडोज एसीएल अनुमतियों की जांच के बारे में लिखता है। आप सीएएस (कोड एक्सेस सिक्योरिटी) का उपयोग कर प्रबंधित कोड अनुमतियों को भी देख सकते हैं। यह अनुमतियों को प्रतिबंधित करने की एक .Net विशिष्ट विधि है। नोट, यदि उपयोगकर्ता के पास लिखने की अनुमति नहीं है तो कोड में कभी भी लिखने की अनुमति नहीं होगी (भले ही सीएएस कहता है) - दो जीत के बीच सबसे अधिक प्रतिबंधक अनुमतियां।
सीएएस उपयोग करने में बहुत आसान है - आप घोषणात्मक विशेषताओं को भी अपनी विधियों की शुरुआत भी जोड़ सकते हैं। आप पढ़ सकते हैं और अधिक से MSDN
वहां रहे हैं भी, सबसे अच्छा और सबसे विश्वसनीय समाधान मैंने पाया था यह:
bool hasWriteAccess = true;
string remoteFileName = "\\server\share\file.name"
try
{
createRemoteFile(remoteFileName);
}
catch (SystemSecurityException)
{
hasWriteAccess = false;
}
if (File.Exists(remoteFileName))
{
File.Delete(remoteFileName);
}
return hasWriteAccess;
- 1. मैं प्रोग्रामेटिक रूप से कैसे निर्धारित कर सकता हूं कि दृश्य C++ रनटाइम 8.0 स्थापित है या नहीं?
- 2. मैं कैसे निर्धारित कर सकता हूं कि उपयोगकर्ता के पास आईओएस ऐप इंस्टॉल है या नहीं?
- 3. मैं कैसे निर्धारित कर सकता हूं कि मेरे एंड्रॉइड ऐप में मेमोरी रिसाव है या नहीं?
- 4. मैं लाटेक्स का उपयोग करके प्रोग्रामेटिक रूप से पीडीएफ कैसे उत्पन्न कर सकता हूं?
- 5. मैं कैसे निर्धारित कर सकता हूं कि रिमोट ड्राइव में सी # का उपयोग कर फ़ाइल लिखने के लिए पर्याप्त जगह है या नहीं?
- 6. प्रोग्रामेटिक रूप से निर्धारित करें कि मेरे बॉक्स
- 7. मैं प्रोग्रामेटिक रूप से कैसे निर्धारित कर सकता हूं कि विंडोज टास्कबार छुपा हुआ है या नहीं?
- 8. मैं अजीब का उपयोग करके क्या कर सकता हूं कि मैं पर्ल में नहीं कर सकता?
- 9. मैं C# में स्ट्रिंग से "\ r \ n" कैसे हटा सकता हूं? क्या मैं regEx का उपयोग कर सकता हूं?
- 10. सी # मैं कैसे निर्धारित कर सकता हूं कि मेरे कोड के धीमे हिस्से कहां हैं?
- 11. मैं कैसे निर्धारित कर सकता हूं कि SQL सर्वर संग्रहीत प्रक्रिया पैरामीटर डिफ़ॉल्ट है या नहीं?
- 12. मैं विंडोज के वर्तमान डिफ़ॉल्ट कोडपेज को प्रोग्रामेटिक रूप से कैसे निर्धारित कर सकता हूं?
- 13. मैं सी # का उपयोग कर एएसपी.Net विकास सर्वर प्रोग्रामेटिक रूप से कैसे चला सकता हूं?
- 14. मैं यह कैसे जांच सकता हूं कि इसका उपयोग करने से पहले मेरे पास पर्ल मॉड्यूल है या नहीं?
- 15. मैं प्रोग्रामिक रूप से यह निर्धारित कैसे कर सकता हूं कि आईआईएस साइट अनुरोध प्राप्त कर रही है या नहीं?
- 16. मैं C# का उपयोग कर स्थानीय मशीन स्टोर में प्रोग्राम प्रमाणपत्र कैसे स्थापित कर सकता हूं?
- 17. मैं कैसे निर्धारित कर सकता हूं कि ऑपरेटिंग सिस्टम सी में POSIX है या नहीं?
- 18. मैं कैसे निर्धारित कर सकता हूं कि जावा क्लास प्रतिबिंब
- 19. मैं कैसे निर्धारित कर सकता हूं कि एमएस ऑफिस 2007 एसपी 2 स्थापित है या नहीं?
- 20. मैं प्रोग्रामेटिक रूप से विंडोज़ फॉर्म कैसे बना सकता हूं?
- 21. मैं कैसे निर्धारित कर सकता हूं कि सी/सी ++ कंपाइलर का उपयोग करने के लिए?
- 22. मैं कैसे निर्धारित कर सकता हूं कि वीबीएस का उपयोग कर एक फाइल लॉक है या नहीं?
- 23. मैं कैसे निर्धारित कर सकता हूं कि पर्ल फ़ंक्शन रनटाइम पर मौजूद है या नहीं?
- 24. मैं कैसे निर्धारित कर सकता हूं कि कोई फ़ाइल खाली है या नहीं?
- 25. मैं कैसे कुशलता से निर्धारित कर सकता हूं कि दो सूचियों में तत्वों का आदेश दिया गया है या नहीं?
- 26. मैं कैसे निर्धारित कर सकता हूं कि विंडोज में एक विशिष्ट फ़ाइल खुलती है या नहीं?
- 27. मैं कैसे निर्धारित कर सकता हूं कि स्ट्रिंग में जावास्क्रिप्ट का उपयोग करके केवल रिक्त स्थान हैं?
- 28. मैं कैसे निर्धारित कर सकता हूं कि मेरी प्रक्रिया
- 29. मैं अपने प्रोसेसर प्रकार को प्रोग्रामेटिक रूप से कैसे निर्धारित कर सकता हूं?
- 30. क्या आप प्रोग्रामेटिक रूप से निर्धारित कर सकते हैं कि उपयोगकर्ता को पैकेज के लिए लाइसेंस प्राप्त है या नहीं?
याद रखें कि यह संभव है एक विंडोज़ प्रयोक्ता किसी फ़ाइल या फ़ोल्डर के लिए अनुमति लिखने के लिए लेकिन इसके लिए अनुमति हटाने की अनुमति नहीं है (लिखने के साथ लेकिन संशोधित नहीं) – hromanko