berens Posted May 24, 2006 Share Posted May 24, 2006 Auslesen in welchem Ordner DVBV installiert ist Wo ist der Wert hinterlegt? Habe in der Registry lieder nur bei HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\DVBViewer_is1 was sinnvolles gefunden, ist nur die Frage, ob das auf allen Systemen gleich ist "DVBViewer_is1". Kann ich das alternativ auslesen? Quote Link to comment
Guest Lars_MQ Posted May 24, 2006 Share Posted May 24, 2006 Also darauf würde ich mich nicht verlassen. Einen direkten weg gibt es nicht. Allerdings kann man sich behelfen: Der DVBViewer ist ein COM-Server, damit muss er in der registry eingetragen sein. Also: function Get_ObjectPathName(const ObjClsID: WideString): WideString; var reg : TRegistry; helper : string; begin reg := TRegistry.Create(KEY_READ); try helper := 'CLSID\' + ObjName + '\LocalServer32'; reg.RootKey := HKEY_CLASSES_ROOT; reg.OpenKeyReadOnly(helper); Result := Reg.ReadString(''); finally reg.free; end; end; Wobei der Aufruf durch DVBVPathAndFilename := Get_ObjectPathName(GUIDToString(CLASS_DVBViewer)); Wichtig ist der KEY_READ, damit ist sichergestellt, dass das auch bei eingeschränkten Userkonten läuft. Ich nutze das ganze im DVBVWebserver, es ist also erprobt Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.