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.