![]() |
Windows 7 Start einer Exe aus Programm blockiert
Hallo,
ich habe ein Programm geschrieben, welches beim Start dann ein anderes Programm startet. Das läuft unter XP problemlos. Heute haben wir das auf einem Windows 7 Rechner installiert und gestartet. Es waren erst einmal Admin Rechte nötig, da es im Programmpfad installiert wurde. Das ist ja auch normal. Wenn ich dann aber das Programm gestartet habe und dann die Funktion zum Starten des anderen Programms nutzen wollte, kam wieder so eine Windows Anmeldung mit Paßwortabfrage. Das zweite Programm befindet sich im selben Ordner wie das erste Programm. Wie gesagt, der User hat keine Adminrechte. Nur zum Installieren wurde es von einem Admin installiert. Wer hat eine Idee? Kann ich da in Delphi etwas machen oder ist das reine Windows Angelegenheit? Aufruf wie folgt:
Delphi-Quellcode:
Err:= ShellExecute(0,
Nil, PChar(fname), Pchar(para), Pchar(strtdir), SW_NORMAL); |
AW: Windows 7 Start einer Exe aus Programm blockiert
Du musst den Prozess mit CreateProcess starten damit die Rechte des startenden Prozesses vererbt werden. ShellExecute beauftragt die Windows Shell mit dem neu Starten. Und diese sorgt für neuerliche UAC-Prüfung/Abfrage.
|
AW: Windows 7 Start einer Exe aus Programm blockiert
Was für ein Programm willst du starten?
Zitat:
|
AW: Windows 7 Start einer Exe aus Programm blockiert
Jupp, der Frage von Luckie schließe ich mich mit an.
Was für ein Programm soll denn gestartet werden und besitzt diese eventuell ein Admin-Manifest? Und was passiert, wenn der Benutzer dieses Programm manuell startet? @Bernhard: Wenn der Benutzer der erste Programm ohne Adminrechte startet, dann besitzt das auch keine. es wird also mit den Rechten des jesweiligen Benutzers gestartet ... und wenn ShellExecute nun keine Rechte vererbt, dann wird das zweite Programm auch wieder mit den gleichen Benutzerrechten ausgeführt ... egal ob was vererbt wird. |
AW: Windows 7 Start einer Exe aus Programm blockiert
Zitat:
Programm ist schon geändert. Nun muss ich nur wieder einen Rechner finden, der Windows 7 hat. Zu Hause arbeite ich immer noch mit XP und bin zufrieden damit. |
AW: Windows 7 Start einer Exe aus Programm blockiert
Erstell dir im XP einen Benutzer ohne Adminrechte.
Das entspricht dann in etwa dem Win7 ohne UAC eines Benutzers ohne Adminrechte. Wenn der Benutzer keine Adminrechte erhalten kann, dann bringt das UAC auch nichts, da er sich darüber ja sowieso keine passenden Rechte besorgen kann. Für beim Programmverzeichnis müssen da natürlich auch ähnliche Rechte eingestellt sein. |
AW: Windows 7 Start einer Exe aus Programm blockiert
Obwohl ich das noch nicht für die Lösung halte. Als was arbeitest du an deinem XP Rechner? Als Administrator?
|
AW: Windows 7 Start einer Exe aus Programm blockiert
Zitat:
Ich habe auf Arbeit auch einen XP Rechner ohne Admin und da läuft das ohne Probleme. Also brauche ich doch einen Win7 Rechner zum Testen oder? Zitat:
|
AW: Windows 7 Start einer Exe aus Programm blockiert
Oder ein Windows 7 in einer VM.
|
AW: Windows 7 Start einer Exe aus Programm blockiert
Zitat:
Jetzt fällt mir ein, dass ich ein Netbook mit Win 7 Starter habe. Da sollte es ja vielleicht auch die gleichen Probleme machen, wenn ich kein Admin bin. Das werde ich am Wochenende mal testen mit ShellExecute und dann mit Createprocess. Ich werde weitere berichten, wie der Test ausgeht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:01 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