Nach Hause

Forum: "Haupt";
Durchsuchen Sie die gesamte Website: delphimaster.net;
Aktuelles Archiv: 2002.01.08;
Herunterladen: [xml.tar.bz2];



Nach unten

Und Sie können den Zugriff auf den Ordner blockieren, z. B. fmShareExclusive, aber für den Ordner?


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

Und Sie können den Zugriff auf den Ordner blockieren, z. B. fmShareExclusive, aber für den Ordner?



Alexey Petrov (2001-12-18 16:08) [1]

Mit CreateFile können Sie ein Verzeichnis öffnen. und exklusiv.

Probieren Sie es aus ...

MSDN-Details



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

> Alexey Petrov ©
QUELLE für Gebrauch CreateFile für
Kann ich mit CreateFile ein Verzeichnis öffnen? ...



Alexey Petrov (2001-12-18 17:23) [3]

> cdaDmitriy © (18.12.01 17: 20)
Lesen Sie MSDN.
Quelle I in trivialen Fällen nicht zitieren.



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

Ich werde es auf jeden Fall versuchen, aber von den Wörtern MSDN bläst etwas melkosoftovym, und ich spreche von Delphi !!




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

> Alexey Petrov © Ich zitiere nicht in trivialen Fällen?
Ich habe versucht ... ein Beispiel zu geben.



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

S1: = "D: \ ICON \"; einschließlich und exklusiv
H: = Integer (CreateFile (PChar (S1)), GENERIC_READ, 0 , null, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0));
label1.Caption: = inttostr (H);
wenn H <0, dann EFCreateError.CreateResFmt (@S, [S1]) erhöhen;



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

cdaDmitriy von UTD Sie haben es verstanden, ich habe keinen Zweifel an der Leistung des Codes, aber die Jagd über die Verzeichnisse zu lesen



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

Hilfe für CreateFile und ausprobiert



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

Sie oder Dummköpfe oder wissen nicht, wie sie lesen sollen. Die Frage wurde gestellt, den Ordner zu sperren und darauf zuzugreifen. Und Sie über die Akten zu mir? Zuerst habe ich es nicht geglaubt, aber dann habe ich alles herausgefunden, alles, was hier geschrieben ist, außer meiner Frage, ist Quatsch!




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

Ja, und was glauben Sie, wird Ihnen in Zukunft antworten? Ich möchte den Code oben nicht überprüfen, aber der nächste Ordner weist auf dieselbe Datei hin.



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

„Natholii, dann bin ich ein Dummkopf !!! ? alle hier !!! џ Ich habe den obigen Code ausprobiert und selbst geschrieben und nichts durchgegangen. Wenn Sie ein Verzeichnis angeben, ändert sich nichts, und wenn die Datei vollständig ist, funktioniert alles, die Datei ist gesperrt. ? Wie gehe ich damit um?



Alexey Petrov (2001-12-19 08:41) [12]

Noch ein Hinweis:
In dem durch "cdaDmitriy © (18.12.01 17: 47)" angegebenen Code werden 2-Fehler ausgegeben.
1. Im Verzeichnisnamen ist das abschließende "\" überflüssig.
2. Die Überprüfung, ob die Datei geöffnet ist, sollte durch Überprüfen auf INVALID_HANDLE_VALUE und nicht <0 durchgeführt werden. In der aktuellen Version von Delphi und WinAPI Integer (INVALID_HANDLE_VALUE) natürlich <0, dies kann sich jedoch ändern, außerdem ist es theoretisch möglich, das Aussehen eines korrekten Handles zu sehen, so dass Integer (Handle) <0.
3. Um WinAPI-Fehler zu überprüfen, ist das Schreiben bequemer
Win32Check (H <> INVALID_HANDLE_VALUE)

> Kunst © (18.12.01 17: 25)
Wenn MSDN verwirrt ist - sehen Sie in der Hilfe des SDK nach, dass dies eine abgeschnittene Version von MSDN ist. Und von Delphi aus werden alle APIs wunderschön aufgerufen.



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

> Alexey Petrov ©

1. Im Verzeichnisnamen ist das abschließende "\" überflüssig.
es ist nicht überflüssig, aber überflüssig:

lpFileName

Verweist auf eine mit Null abgeschlossene Zeichenfolge, die zum Erstellen oder Öffnen verwendet werden kann.

Wenn * lpFileName ein Pfad ist, gibt es eine Beschränkung für die Standardzeichenfolge von MAX_PATH-Zeichen. Diese Funktion analysiert Pfade.
Windows NT: Sie können Pfade verwenden, die länger als die MAX_PATH-Zeichen sind, um den Pfad zum Pfad zu erstellen. Das "\\?" Weist Sie an, den Pfad zu deaktivieren. 32,000 Unicode-Zeichen lang. Sie müssen die vollständig qualifizierten Pfade mit dieser Technik verwenden. Dies funktioniert auch bei UNC-Namen. Das "\\?" Wird als Teil des Pfads ignoriert. Beispielsweise wird "\\? \ C: \ myworld \ private" als "C: \ myworld \ private" und "\\? \ UNC \ tom_1 \ hotstuff \ coolapps" als "\\ tom_1 \ hotstuff" betrachtet \ coolapps. "

2. siehe die Einführung von Anteilsklassen; obwohl
Win32Check (H <> INVALID_HANDLE_VALUE) ist zuverlässiger.


{TFileStream}

Konstruktor TFileStream.Create (const Dateiname: Zeichenfolge; Modus: Word);
beginnen
wenn Modus = fmCreate dann
beginnen
FHandle: = FileCreate (Dateiname);
wenn FHandle <0 dann
raise EFCreateError.CreateResFmt (@SFCreateError, [Dateiname]);
ende sonst
beginnen
FHandle: = FileOpen (Dateiname, Modus);
wenn FHandle <0 dann
EFOpenError.CreateResFmt (@SFOpenError, [Dateiname]) erhöhen;
end;
end;

Kunst © alles funktioniert, wenn Sie senden möchten





Forum: "Haupt";
Durchsuchen Sie die gesamte Website: delphimaster.net;
Aktuelles Archiv: 2002.01.08;
Herunterladen: [xml.tar.bz2];



nach oben

Nach Hause

Top.Mail.Ru Yandeks.Metrika













Speicher: 0.78 MB
Zeit: 0.37 c
1-22102
Andrey196
2001-12-19 18:43
2002.01.08
Warum Personen Bild TIF-Bilder nicht anzeigen möchten


4-22460
Dimich
2001-11-01 08:49
2002.01.08
Menschen helfen !!! Disher brennt !!!


1-22212
T2
2001-12-14 03:13
2002.01.08
MMTOOLS CRACK


14-22381
Felix
2001-11-08 20:41
2002.01.08
Was war es?


1-22219
dimonf
2001-12-16 17:23
2002.01.08
So erstellen Sie eine Leinwand in einem Fenster mit einem Fenster





Afrikanisch albanisch Arabic Armenisch Aserbaidschanisch Baskisch Weißrusse Bulgarian katalanisch Chinesisch (vereinfacht) Chinesische Tradition) kroatisch Tschechisch Dänisch Dutch Englisch estnisch Philippinisch Finnish Französisch
Galicisch Georgisch Deutsch griechisch haitian Creole hebräisch Hindi ungarisch isländisch Indonesian irisch Italian Japanisch Koreanisch lettisch litauisch Makedonisch Malay Maltesisch Norwegian
persisch Polnisch Portugiesisch rumänisch Russisch serbisch Slovak Slowenisch Spanisch swahili Swedish Thai Türkisch Ukrainisch Urdu Vietnamesisch Walisisch Jiddisch Bengalisch bosnisch
cebuano Esperanto Gujarati Hausa Hmong igbo Javanisch kannada khmer Laotisch Lateinisch Maorisch Marathi Mongolisch nepali Pandschabi Somalisch Tamilisch Telugu yoruba
Zulu
Английский Französisch Deutsch Italienisch Португальский Russisch Spanisch