Vista und SP2: Rechteproblem bei einer VFP-exe

15/11/2007 - 10:58 von Heike Vogt | Report spam
Hallo Leute,
ich habe folgendes Problem unter Vista. Hier ein Beispiel an einem
Installationsprogramm, einmal mit VFP9.0, SP1 und einmal mit VFP9.0, SP2
erstellt.

SP1
- normaler Benutzer mit lokalen Adminrechten
- Start "setup.exe" (erstellt mit VFP 9.0, SP1)
- Sicherheitsabfrage, ob Programm ausgeführt werden soll
- wenn Antwort ja - problemlose Installation in "program files"

SP2
- normaler Benutzer mit lokalen Adminrechten
- Start "setup.exe" (erstellt mit VFP 9.0, SP2)
- keine Sicherheitsabfrage
- Programm startet, wird aber abgebrochen, mit der Meldung, dass nicht nach
"program files" kopiert werden darf

Fehler im SP2 oder Anwenderfehler/Denkfehler oder ..? Wie bekomme ich
mein "setup.exe" zum Laufen?

Bin für alle Tipps dankbar.
Gruß Heike
 

Lesen sie die antworten

#1 Jens Brand
15/11/2007 - 12:10 | Warnen spam
Hallo Heike,


SP2
- normaler Benutzer mit lokalen Adminrechten
- Start "setup.exe" (erstellt mit VFP 9.0, SP2)
- keine Sicherheitsabfrage
- Programm startet, wird aber abgebrochen, mit der Meldung, dass nicht nach
"program files" kopiert werden darf




Unter Vista hat normalerweise kein Benutzer das Recht in den
Programme-Ordner zu schreiben. Wenn es doch jemand versucht, gibts die
Fehlermeldung. Da es aber Setup-Programme gibt, die das doch müssen,
versucht Vista diese Programme zu erkennen und fragt dann vor der
Ausführung nach, ob das Schreiben im Programme-Ordner erlaubt ist.
Damit Vista diese Programme identifizieren kann, wird als Erstes in der
Programmdatei das sogenannte Manifest gesucht. Dies ist eine
eingebettete XML-Datei, die Infos über das Programm enthàlt. Wenn dieses
Manifest nicht gefunden wird oder keine Infos über die benötigten
Zugriffsrechte enthàlt, dann schaut sich Vista die EXE an und sucht nach
weiteren Merkmalen von Setup-Programmen. Dies kann zum Beispiel die
Zeichenfolge "setup" im Programmnamen sein.

Dies war bei VFP bis einschließlich SP1 so der Fall. Seit SP2 fügt VFP
aber in die erstellte Exe ein Manifest ein, in dem es festlegt, dass es
sich bei der EXE um KEIN Setup-Programm handelt. Das macht ja auch
durchaus Sinn, da die meisten VFP-Programme keine Setup-Programme sind.
Wenn du jetzt aber ein Programm hast, was diese erweiterten
Zugriffsrechte braucht, dann musst du das Manifest in der erstellten EXE
austauschen. Das ist nicht ganz trivial, aber zum Glück haben sich damit
schon andere Leute erfolgreich mit beschàftigt.

siehe http://www.bingo-ev.de/~mw368/vfp9_vista.html

Dort gibt es die Manifest-Tools, die das ganze automatisieren.


Viele Grüße

Jens Brand

Ähnliche fragen