منزل
Top.Mail.Ru Yandeks.Metrika
المنتدى: "Main";
الأرشيف الحالي: 2002.01.08;
تنزيل: [xml.tar.bz2];

إلى

ويمكنك حظر الوصول إلى المجلد ، مثل fmShareExclusive ، ولكن بالنسبة للمجلد ؟؟ البحث عن فروع مماثلة


Art   (2001-12-18 15:12) [0]

ويمكنك حظر الوصول إلى المجلد ، مثل fmShareExclusive ، ولكن بالنسبة للمجلد ؟؟



Алексей Петров   (2001-12-18 16:08) [1]

باستخدام CreateFile ، يمكنك فتح دليل ، بما في ذلك والحصري.

جربه ...

تفاصيل MSDN



cdaDmitriy   (2001-12-18 17:20) [2]

> أليكسي بتروف ©
مصدر للاستخدام CreateFile ل
هل يمكنني فتح دليل باستخدام CreateFile؟ ...



Алексей Петров   (2001-12-18 17:23) [3]

> cdaDmitriy © (18.12.01 17: 20)
قراءة MSDN.
مصدر في حالات تافهة أنا لا أذكر.



Art   (2001-12-18 17:25) [4]

سأحاول بالتأكيد ، لكن الكلمات MSDN تهب شيئًا بسيطًا ، وأنا أتحدث عن دلفي !!



cdaDmitriy   (2001-12-18 17:40) [5]

> أليكسي بتروف © لا أحمل قضايا تافهة؟
حاولت ... جرب وإعطاء مثال.



cdaDmitriy   (2001-12-18 17:47) [6]

S1: = "D: \ ICON \"؛ بما فيه والحصري
H: = عدد صحيح (CreateFile (PChar (S1) ، GENERIC_READ ، 0 ، nil، OPEN_EXISTING، FILE_FLAG_BACKUP_SEMANTICS، 0))؛
label1.Caption: = inttostr (H)؛
إذا كان H <0 ، فقم برفع EFCreateError.CreateResFmt (S، [S1]) ؛




Art   (2001-12-18 17:53) [7]

cdaDmitriy otkudova حصلت عليه ، ليس لدي شك في أن الشفرة تعمل ، لكنني أريد أن أقرأ عن الدلائل



cdaDmitriy   (2001-12-18 17:59) [8]

مساعدة ل CreateFile وحاول



Art   (2001-12-18 20:24) [9]

أنت يا رفاق إما حمقى أو لا تعرف كيف تقرأ ، تم طرح سؤال ، تحتاج إلى قفل المجلد والوصول إليه. وأنت عن الملفات بالنسبة لي ؟؟؟ لم أصدق ذلك في البداية ، ولكن بعد ذلك اكتشفت كل شيء ، كل شيء مكتوب هنا ، باستثناء سؤالي ، هراء!



Anatoly Podgoretsky   (2001-12-18 20:28) [10]

نعم ، وماذا ستتم الإجابة عليه في المستقبل ، لا أريد التحقق من الكود أعلاه ، لكن المجلد التالي يشير إلى نفس الملف.



Art   (2001-12-18 21:39) [11]

"اناتولي ، ثم أنا أحمق !!! ؟ هذا كل شيء !!! tried جربت الكود أعلاه وكتبته بنفسي ولم يذهب أي شيء ؛ إذا حددت الدليل ، فلن يتغير شيء ، ولكن إذا كان الملف ، ثم يعمل كل شيء ، فإن الملف مغلق !!! ؟ كيف تتعامل مع هذا ؟؟؟



Алексей Петров   (2001-12-19 08:41) [12]

تلميح آخر:
يحتوي الرمز المقدم من "cdaDmitriy © (18.12.01 17: 47)" على أخطاء 2.
1. في اسم الدليل ، النهائي "\" غير ضروري.
2. يتم التحقق مما إذا كان يجب فتح الملف عن طريق التحقق من INVALID_HANDLE_VALUE وليس <0. في الإصدار الحالي من Delphi و WinAPI Integer (INVALID_HANDLE_VALUE) ، بالطبع ، <0 ، لكن هذا يمكن أن يتغير ، علاوة على ذلك ، من الناحية النظرية ، يمكن أن يظهر المقبض الصحيح ، بحيث يكون Integer (Handle) <0.
3. للتحقق من أخطاء WinAPI - إنها أكثر ملاءمة للكتابة
Win32Check (H <> INVALID_HANDLE_VALUE)

> الفن © (18.12.01 17: 25)
إذا كان MSDN مرتبكًا - راجع مساعدة SDK ، فهذه هي في الواقع نسخة مقطوعة من MSDN. ومن دلفي ، يتم استدعاء جميع واجهات برمجة التطبيقات تمامًا.



cdaDmitriy   (2001-12-19 09:31) [13]

> أليكسي بتروف ©

1. في اسم الدليل ، النهائي "\" غير ضروري.
انها ليست زائدة عن الحاجة ولكن زائدة عن الحاجة

lpFileName

يشير إلى سلسلة منتهية بقيمة خالية null والتي تحدد اسم الكائن (ملف أو توجيه إخراج أو mailslot أو مورد اتصالات أو جهاز قرص أو وحدة تحكم أو دليل) لإنشاء أو فتح.

إذا كانت * lpFileName عبارة عن مسار ، فهناك حد افتراضي لحجم السلسلة يتكون من MAX_PATH من الأحرف. يرتبط هذا الحد بكيفية قيام دالة CreateFile بتوزيع المسارات.
Windows NT: يمكنك استخدام مسارات أطول من MAX_PATH من الأحرف عن طريق استدعاء الإصدار العريض (W) من CreateFile وتسبق "\\؟ \" في المسار. "\\؟ \" يحكي الدالة لإيقاف تحليل المسار. يتيح لك ذلك استخدام المسارات التي يبلغ طول أحرف 32,000 Unicode فيها تقريبًا. يجب عليك استخدام مسارات مؤهلة بالكامل مع هذه التقنية. هذا يعمل أيضا مع أسماء UNC. يتم تجاهل "\\؟ \" كجزء من المسار. على سبيل المثال ، "\\؟ \ C: \ myworld \ private" يُنظر إليه على أنه "C: \ myworld \ private" ، و "\\؟ \ UNC \ tom_1 \ hotstuff \ coolapps" يُنظر إليه على أنه "\\ tom_1 \ hotstuff" \ coolapps ".

2. إلقاء نظرة على تنفيذ وحدة الطبقات ؛ رغم أن
Win32Check (H <> INVALID_HANDLE_VALUE) أكثر موثوقية.


{TFileStream}

مُنشئ TFileStream.Create (const FileName: string؛ Mode: Word)؛
بدأ
إذا كان الوضع = fmCreate بعد ذلك
بدأ
FHandle: = FileCreate (FileName) ؛
إذا FHandle <0 بعد ذلك
قم برفع EFCreateError.CreateResFmt (SFCreateError، [FileName]) ؛
نهاية آخر
بدأ
FHandle: = FileOpen (FileName ، الوضع) ؛
إذا FHandle <0 بعد ذلك
قم برفع EFOpenError.CreateResFmt (SFOpenError، [FileName]) ؛
الغاية؛
الغاية؛

الفن © كل شيء يعمل إذا كنت تريد إرسال الكتابة



صفحات: 1 فرع كامل

المنتدى: "Main";
الأرشيف الحالي: 2002.01.08;
تنزيل: [xml.tar.bz2];

الطابق العلوي









الذاكرة: 0.6 ميغابايت
الوقت: 0.06 ج
1-22210
رجل باللون الأحمر
2001-12-15 20:12
2002.01.08
كيف namut أن ............................


1-22207
Delphimun
2001-12-15 10:00
2002.01.08
كيفية تجميع ملفات متعددة في إكس واحد


1-22059
ليو ^ أحد
2001-12-19 07:24
2002.01.08
الذي عمل ل


6-22276
Lamok
2001-10-05 23:13
2002.01.08
إرسال البيانات إلى الإنترنت


3-21928
كايف
2001-12-04 17:42
2002.01.08
تجاوز حسابي أو اقتطاع سلسلة في استعادة





الأفريكانية الألبانية عربي الأرميني أذربيجان الباسكي البيلاروسية Bulgarian التشيكية الصينية المبسطة) تقاليد صينية) الكرواتية التشيكية دانماركي Dutch أنجليزي الإستونية الفلبينية Finnish جيب
الجاليكية الجورجية الألمانيّة اليونانيّة الكريولية الهايتية اللغة العبرية الهندية الهنغارية أيسلندي Indonesian الأيرلندية Italian اليابانيّة الكوريّة اللاتفية اللتوانية المقدونية الملايو المالطية Norwegian
اللغة الفارسية بولنديّة البرتغاليّة رومانية Russian صربي السلوفاكيّة سلوفيني إسباني السواحيلي Swedish Thai التركية الأوكراني الأردية الفيتنامية ويلزي اليديشية البنغالي البوسنية
السيبيونو الاسبرانتو الغوجاراتية الهوسا همونغ الإيبو جاوي الكانادا الخمير لاو لاتينية الماوري المهاراتية المنغولية النيبالية البنجابية الصومالية التاميل التيلجو اليوروبا
زولو
Английский Французский ألماني Итальянский البرتغالية Русский Испанский