![]() |
OCX unter Vista registrieren
Moin,
meine Anwendung für XP will unter Vista nun nicht mehr starten. Es wird behauptet, dass Administrator-Rechte vonnöten wären, die sind aber meines Erachtens vorhanden... Selbst wenn sie vorhanden sind, geht es auch nicht. Vermutlich liegt es an der OCX-Datei, die ich direkt nach Application.Initialize bei jedem Start registrieren möchte. Das muss (zumindest einmal) auch so sein, da die OCX in der Anwendung gebraucht wird. Das hier ist mein Code zum Registrieren:
Delphi-Quellcode:
Meine Frage: Gibt es vielleicht eine andere Möglichkeit, die OCX zu registrieren? Wenn einmal Admin-Rechte vorhanden sein müssen, ist es ja nicht so schlimm. Aber im Moment geht es ja einfach überhaupt nicht. Kann man vielleicht abfragen, ob sie bereits registriert ist? Dann bräuchte man vielleicht nur einmal Admin-Rechte.
procedure RegisterOCX;
type TRegProc = function : HResult; stdcall; var ocxPath : string; RegProc: TRegProc; LibHandle: THandle; begin ocxPath := ExtractFilePath(Application.ExeName) + 'xxxx.ocx'; LibHandle := LoadLibrary(PChar(ocxPath)); if LibHandle<>0 then begin @RegProc := GetProcAddress(LibHandle, 'DllRegisterServer'); if (@RegProc=Nil) or (RegProc<>0) then ShowMessage('Fehler!'); FreeLibrary(LibHandle); end; end; Vielen Dank für jeden Hinweis, Tier. |
Re: OCX unter Vista registrieren
Moin Tier,
erst einmal herzlich willkommen hier in der Delphi-PRAXiS. Zitat:
Selbst wenn Du unter Vista Admin bist, musst Du bestimmte Zugriffe noch gezielt genehmigen. Probier doch mal, was passiert, wenn Du die Datei "von Hand" registrierst. |
Re: OCX unter Vista registrieren
Wenn ich die OCX mit regsvr32 registrieren möchte, gibt's ebenfalls eine Fehlermeldung.
Von wegen, dass DllRegisterServer nicht aufgerufen werden konnte mit dem Fehlercode 8002801c. Scheinbar kann da nicht in die Registry geschrieben werden, nehme ich mal an. Wie registrieren denn andere Menschen ihre alten OCX-Dateien unter Vista, wenn nicht so? Oder wie bekomme ich die Rechte so hoch, dass das erlaubt ist, was meine OCX (von einem Fremdhersteller) da versucht? |
Re: OCX unter Vista registrieren
OK, neuer Versuch: Ich hab die Benutzerberechtigungen auf den HKCR-Ast in der Registry auf Vollzugriff gesetzt. Dann funktioniert das Registrieren über Delphi. Aber das kann ja nicht die Lösung sein oder? Wie soll denn sonst eine OCX unter Vista registriert werden?
|
Re: OCX unter Vista registrieren
Braucht man dafür ein Zertifikat? :gruebel:
Gab letztens schonmal sowas, wo UAC ein Zertifikat wollte. :? |
Re: OCX unter Vista registrieren
Versuch es mal mit dem entsprechenden Eintrag im Manifest, dass du deiner Anwendung beilegst.
|
Re: OCX unter Vista registrieren
Manifest? Gibt es dazu noch genauere Informationen?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:18 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