AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datei in Benutzung -> Sperren

Ein Thema von MCXSC · begonnen am 27. Jun 2009 · letzter Beitrag vom 17. Sep 2010
 
MCXSC
(Gast)

n/a Beiträge
 
#6

Re: Datei in Benutzung -> Sperren

  Alt 27. Jun 2009, 01:11
Zitat von Luckie:
Luckie hat Urlaub und das wird ausgenutzt, da wird die Nacht zum Tag.
Kenn ich irgendwo her...

Ich habe nun zwei Möglichkeiten gefunden: Einmal mit einem gewissen OpenFile und einmal mit LockFileEx/UnlockFileEx. Sollte man eines davon bevorzugen?

//Edit: Okay, habe mir nun mal etwas "zusammengebastelt":

Delphi-Quellcode:
//zum sperren
var
  lf_FileSize: Integer;
  lf_FileHandle: THandle;
begin
  lf_FileHandle := CreateFile(PChar(Datei), GENERIC_WRITE, 0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
  lf_FileSize:= GetFileSize(lf_FileHandle, nil);
  LockFile(lf_FileHandle, 0, 0, lf_FileSize, 0);
  CloseHandle(lf_FileHandle);
end

//zum entsperren
var
  lf_FileSize: Integer;
  lf_FileHandle: THandle;
begin
  lf_FileHandle := CreateFile(PChar(Datei), GENERIC_WRITE, 0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
  lf_FileSize:= GetFileSize(lf_FileHandle, nil);
  UnlockFile(lf_FileHandle, 0, 0, lf_FileSize, 0);
  CloseHandle(lf_FileHandle);
end;
Und dabei bekomme ich (zumindest bis zum sperren kommt er ) die Fehlermeldung "Systemfehler. Code: 6. Das Handle ist ungültig."
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz