Einzelnen Beitrag anzeigen

Fridolin Walther

Registriert seit: 11. Mai 2008
Ort: Kühlungsborn
446 Beiträge
 
Delphi 2009 Professional
 
#9

Re: Windows 7 x64 - FileExist fehler

  Alt 22. Mai 2009, 12:28
Da einige zu faul sind sich den von mir verlinkten MSDN Artikel anzuschauen, hier nochmal die Infos zusammengefasst:

Als Win32 Anwendung werden auf einem x64 System (egal ob XP, 2003, Vista, 2008, 7) alle Zugriffe auf %windir%\system32 nach %windir%\syswow64 umgeleitet. Ausgenommen davon sind folgende Unterverzeichnisse von %windir%\system32:

%windir%\system32\catroot
%windir%\system32\catroot2
%windir%\system32\drivers\etc
%windir%\system32\logfiles
%windir%\system32\spool

Darüber hinaus gibt es zwei Methoden um als Win32 Anwendung an das "richtige" System32 Verzeichnis zu gelangen. Ab Windows Vista gibt es zum einen den virtuellen Ordner %windir%\sysnative. Falls eine Anwendung auf diesen Ordner zugreift, landet es automatisch im nativen System32 Ordner. Diese Methode funktioniert aber erst ab Windows Vista. Ab Windows XP dagegen funktioniert die API MSDN-Library durchsuchenWow64DisableWow64FsRedirection. Mit dieser API kann ein Thread (!!) die Dateisystemvirtualisierung für sich selbst abschalten. Danach landen also alle Zugriffe auf %windir%\system32 auch wirklich dort.

Hoffe damit alle Unklarheiten beseitigt zu haben.
Fridolin Walther
  Mit Zitat antworten Zitat