Benutzerkontensteuerung von Win Vista & Autostart

13/01/2008 - 16:00 von Diego Wegner | Report spam
Hallo!

Nachdem ich hier mit Eurer Hilfe schon ein Problem mit der
Benutzerkontensteuerung von Windows Vista lösen konnte und so etwas über
die Funktion von Manifest-Dateien gelernt habe, hoffe ich ein wenig,
dass jemand ein anderes Problem, im Zusammenhang mit dem Autostart unter
Vista, einen Lösungsansatz hat. Googeln nach den relevanten Stichworten
brachte leider keinen Erfolg.

Ich arbeite selber noch mit Windows XP und verfüge auch nur über einen
Rechner. Jemand, der nein VB6-Programm unter Vista installiert hat,
berichtete jetzt, dass die Benutzerkontensteuerung von Vista jeden
Autostart des Programms unterbindet, bis er eine Abfrage zustimmend
beantwortet hat. Da das Tool die Zwischenablage überwacht, ist ein
Autostart sinnvoll und beim Setup wird eine Verknüpfung im
Autostart-Ordner angelegt. Nun ist es ja nervig, wenn die Vista-User bei
jedem Hochfahren des Rechners den Autostart meines Programms erst
explizit zulassen müssen.

Aufgrund eines anderen Lösungsvorschlages liefere ich das Programm jetzt
mit einer Manifest-Datei aus:

__________________________________schnipp__________________________________

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0"
xmlns="urn:schemas-microsoft-com:asm.v1"
xmlns:asmv1="urn:schemas-microsoft-com:asm.v1"
xmlns:asmv2="urn:schemas-microsoft-com:asm.v2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-in...">
<assemblyIdentity version="5.03.0.25" name="ClipboardManager.cbm"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="requireAdministrator"
uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</asmv1:assembly>
__________________________________schnapp__________________________________

Ich könnte mir vorstellen, dass evtl. durch einen zusàtzlichen Eintrag
in dieser Manifest-Datei die erforderliche Berechtigung zum Autostart
des Programms unter Vista gesetzt wird - habe aber leider keine Ahnung,
wie ein solcher Eintrag aussehen müsste.

Für Eure Hilfe vorab herzlichen Dank!

Gruß
Diego
 

Lesen sie die antworten

#1 Thorsten Doerfler
13/01/2008 - 16:50 | Warnen spam
Diego Wegner schrieb:
Ich arbeite selber noch mit Windows XP und verfüge auch nur über einen
Rechner. Jemand, der nein VB6-Programm unter Vista installiert hat,
berichtete jetzt, dass die Benutzerkontensteuerung von Vista jeden
Autostart des Programms unterbindet, bis er eine Abfrage zustimmend
beantwortet hat. Da das Tool die Zwischenablage überwacht, ist ein
Autostart sinnvoll und beim Setup wird eine Verknüpfung im
Autostart-Ordner angelegt.



Schlechte Idee. Auf die Gefahr hin mich zu irren, aber wenn Du Deine
Anwendung in die Registrierung eintràgst, bleibt diese
Zustimmungsaufforderung aus:

Für den angemeldeten User:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

Für alle User:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Nun ist es ja nervig, wenn die Vista-User bei
jedem Hochfahren des Rechners den Autostart meines Programms erst
explizit zulassen müssen.



Nein, auf die Art wird der Benutzer zur Interaktion aufgefordert. Das
ist die Maßnahme "Weniger Monotonie am Arbeitsplatz". In Windows 7
werden solche Meldungen dann auch noch an zufàlligen Positionen
erscheinen und die Reihenfolge der Schaltflàchen jedes mal geàndert,
um mehr Aufmerksamkeit des Benutzers zu fördern.

;-)

Aufgrund eines anderen Lösungsvorschlages liefere ich das Programm jetzt
mit einer Manifest-Datei aus:

__________________________________schnipp__________________________________

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0"
xmlns="urn:schemas-microsoft-com:asm.v1"
xmlns:asmv1="urn:schemas-microsoft-com:asm.v1"
xmlns:asmv2="urn:schemas-microsoft-com:asm.v2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-in...">
<assemblyIdentity version="5.03.0.25" name="ClipboardManager.cbm"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="requireAdministrator"
uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</asmv1:assembly>
__________________________________schnapp__________________________________

Ich könnte mir vorstellen, dass evtl. durch einen zusàtzlichen Eintrag
in dieser Manifest-Datei die erforderliche Berechtigung zum Autostart
des Programms unter Vista gesetzt wird - habe aber leider keine Ahnung,
wie ein solcher Eintrag aussehen müsste.



Ich auch nicht. Was vielleicht daran liegt, dass es einen solchen
nicht gibt. Zugegeben diese Manifeste sehen toll aus und man könnte
meinen, hinter all dem XML muss mehr stecken, aber der Schein trügt.

Mit dem Manifest erreichst Du übrigens genau das Gegenteil von dem,
was Du eigentlich erreichen wolltest. Damit wird bei jedem Start der
Anwendung der Benutzer um seine Zustimmung gefragt, da
Admininstratorrechte anfordert.

Digital signierte Anwendungen sind das einzige, was noch Wunder
bewirken kann. Denn solche genießen unter Vista einen anderen
Vertrauensstatus. Was nicht bedeutet, dass sie alles dürfen.

Grundsàtzlich ist es keine schlechte Idee, wenn man selber das System
zum Testen zur Verfügung hat, auf dem man auch seine Anwendungen
verteilen möchte. Dank Virtualisierungslösungen, wie Virtual PC und VM
Ware sollte das auch mit einem einzigen Rechner kein größeres Problem
darstellen.

Thorsten Dörfler
Microsoft MVP Visual Basic

vb-hellfire visual basic faq | vb-hellfire - einfach anders
http://vb-faq.de/ | http://www.vb-hellfire.de/

Ähnliche fragen