سؤال

وتحيات!

وأنا أحاول أن تحقق الدليل الكتابة الأذونات من ضمن برنامج / ATL ويندوز MFC باستخدام C ++. بلدي أول تخمين هو استخدام وظيفة _access C القياسية، منها مثلا:

if (_access("C:\mydir", 2) == -1)
   // Directory is not writable.

ولكن على ما يبدو على ويندوز 2000 و XP، _access لا يمكن تحديد أذونات الدليل. (أي علامة التبويب أمان في مربع الحوار خصائص عند النقر بزر الماوس الأيمن فوق على دليل في مستكشف) وهكذا، ليس هناك وسيلة أنيقة لتحديد أذونات الكتابة دليل في ويندوز 2000 / XP باستخدام أي من المكتبات ويندوز C ++؟ إذا كان الأمر كذلك، كيف؟

والشكر

وايفان

هل كانت مفيدة؟

المحلول

ويمكنك استدعاء CreateFile مع وصول GENERIC_WRITE للتحقق من ذلك. http://msdn.microsoft.com/en-us /library/aa363858(VS.85).aspx

وانها ليست C ++ مكتبة لكنها لا تزال تحصي أنيقة كما أنه لا مباشرة ما تريد ...

نصائح أخرى

استخدم ثانية المعهد. يمكنك أن تسأل عن المحامي. Win32 واجهة برمجة التطبيقات الأخبار: أخبار: //194.177.96.26/comp.os.ms-windows.programmer.win32 حيث كثيرا ما ناقشناه (C / C ++ كود)

scroll top