Ich glaube, das hier ist evtl. das gleiche Problem...
Wenn ich ab Vista eine EXE im Ordner Program Files (Rechte und Umleitung des Ordners beachten) öffne (kein Manifest), erzeugt folgender Quelltext
Declare File$, F#
File$ = LoadFile$("Datei laden", "*.*")
'Set("FileMode",0)
IF File$ <> ""
Assign #2, File$
OpenRw #2
DIM f#, FileSize(File$)
Assign #1, File$
OpenRw #1
Print FileSize(File$)
BlockRead(File$, f#, 0, FileSize(File$))
$B "Test"
Print Char$(f#, 0, SizeOf(f#))
$B "Test 2"
CloseRw #1
CloseRw #2
dispose f#
endif
Alles anzeigen
bei mir folgenden Fehler:
[Blockierte Grafik: http://s4.postimage.org/u0rBJ.jpg]
Wie kommt das?
OpenRW schlägt hier fehl, da zum Öffnen (Read / Write) einer EXE im Ordner Program Files Adminrechte erforderlich sind - die hat das Programm aber nicht.
Normalerweise würde hier in VirtualStore umgeleitet werden - bei bestimmten Dateiendungen findet aber eine solche Umleitung nicht statt (unter anderem EXE und DLL Dateien). Profan merkt sich hier, das OpenRW fehlgeschlagen ist (Errorcode 5 = Zugriff verweigert). BlockRead würde hier problemlos funktionieren, aufgrund des vorangegangenen Fehlers schlägt der Befehl hier aber fehl. Muss das sein?