Einzelnen Beitrag anzeigen

Tier

Registriert seit: 30. Mär 2006
9 Beiträge
 
#1

OCX unter Vista registrieren

  Alt 18. Dez 2006, 18:41
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:
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;
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.

Vielen Dank für jeden Hinweis,
Tier.
  Mit Zitat antworten Zitat