Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Alternative für Rundll32.exe (https://www.delphipraxis.net/138032-alternative-fuer-rundll32-exe.html)

EWeiss 2. Aug 2009 16:55


Alternative für Rundll32.exe
 
Hab früher immer DLL's mit ähnlichen aufrufen installiert.

Zitat:

RUNDLL32.EXE C:\Windows\system32\MP3medExt.dll,Install
Leider muss ich festellen das es die unter Win7 nicht mehr gibt.
Welche Alternative habe ich nun die DLL zu installieren ?

gruss Emil

SirThornberry 2. Aug 2009 16:59

Re: Alternative für Rundll32.exe
 
Ist es nicht so das dieser Aufruf die Funktion Install aus C:\Windows\system32\MP3medExt.dll aufruft?

himitsu 2. Aug 2009 17:09

Re: Alternative für Rundll32.exe
 
Zitat:

Zitat von SirThornberry
Ist es nicht so das dieser Aufruf die Funktion Install aus C:\Windows\system32\MP3medExt.dll aufruft?

jupp

praktisch nutzt man die Rundll32.exe als Host, zum Ausführen der angegebenen Funktion in der DLL
und braucht somit keine eigene Hostanwendung mitzugeben.

Bernhard Geyer 2. Aug 2009 17:23

Re: Alternative für Rundll32.exe
 
Zitat:

Zitat von EWeiss
Leider muss ich festellen das es die unter Win7 nicht mehr gibt.

Wirklich nicht. Für 32-Bit Apps (wie Delphi sie nur erzeugen kann) mußt du im SystemWOW64 (?) -Verzeichnis nachschauen. Das Verzeichnis System32 ist für 64-Bit Prozesse unter 64-Bit Windows (Der Name legt es ja auch nahe :mrgreen: ).

himitsu 2. Aug 2009 17:35

Re: Alternative für Rundll32.exe
 
leitet Windows da im Normalfall nicht eh automatisch den System32-Pfad einer Win32-Anwendung virtuell auf diesen um?

mkinzler 2. Aug 2009 17:43

Re: Alternative für Rundll32.exe
 
Zitat:

leitet Windows da im Normalfall nicht eh automatisch den System32-Pfad einer Win32-Anwendung virtuell auf diesen um?
Ja

Bernhard Geyer 2. Aug 2009 18:34

Re: Alternative für Rundll32.exe
 
Zitat:

Zitat von himitsu
leitet Windows da im Normalfall nicht eh automatisch den System32-Pfad einer Win32-Anwendung virtuell auf diesen um?

Kommt darauf an was genau gemacht wird. Wenn per ShellExecte hier gearbeitet wird, wird das ja u.U. von einem 64-Bit Programm (64-Bit Shell) der Eintrag angelegt wird.

EWeiss 2. Aug 2009 18:44

Re: Alternative für Rundll32.exe
 
Zitat:

Zitat von Bernhard Geyer
Zitat:

Zitat von EWeiss
Leider muss ich festellen das es die unter Win7 nicht mehr gibt.

Wirklich nicht. Für 32-Bit Apps (wie Delphi sie nur erzeugen kann) mußt du im SystemWOW64 (?) -Verzeichnis nachschauen. Das Verzeichnis System32 ist für 64-Bit Prozesse unter 64-Bit Windows (Der Name legt es ja auch nahe :mrgreen: ).

Danke aber im ganzen System ist die Rundll32.exe nicht zu finden.
Trotzdem das ich unsichtbare Dateien mit einbezogen habe..

Gibt es die nicht mehr ?

Ups!
Hab mal unter XP gescannt dort findet er die.
in System32 und in Windows\SysWOW64

werd mal schaun was ich da nehmen kann unter System bekoome ich immer ne 0 also nicht erfolgreich
als Meldung.

EDIT:
Es geht um meinen Mediaplayer der in VB geschrieben ist... ;)

Code:
            GetSystemDirectory systemdir, 255
            strF = NTrim(systemdir)
            strF = strF & "\MP3medExt.dll"
            SaveSettingString HKEY_CLASSES_ROOT, "CLSID\{448f4a40-2602-11d1-b4c0-080000051171}\InProcServer32", "", strF
            SaveSettingString HKEY_CLASSES_ROOT, "CLSID\{448f4a40-2602-11d1-b4c0-080000051171}\InProcServer32", "ThreadingModel", "Apartment"
            SaveSettingString HKEY_CLASSES_ROOT, ".mp3a", "", "MP3medExt.Action"
            SaveSettingString HKEY_LOCAL_MACHINE, "Software\Classes\Clsid\{448f4a40-2602-11d1-b4c0-080000051171}\InProcServer32", "", strF
            SaveSettingString HKEY_LOCAL_MACHINE, "Software\Classes\Clsid\{448f4a40-2602-11d1-b4c0-080000051171}\InProcServer32", "ThreadingModel", "Apartment"
            SaveSettingString HKEY_LOCAL_MACHINE, "Software\Classes\MP3medExt.Action", "", ""
            SaveSettingString HKEY_LOCAL_MACHINE, "Software\Classes\MP3medExt.Action\Shell", "", ""
            SaveSettingString HKEY_LOCAL_MACHINE, "Software\Classes\MP3medExt.Action\Shell\open", "", ""
            SaveSettingString HKEY_LOCAL_MACHINE, "Software\Classes\MP3medExt.Action\Shell\open\command", "", ""
            SaveSettingString HKEY_CURRENT_USER, "Software\Classes\MP3medExt.Action\Shell\open\command", "", "notepad ""%1"""
            SaveSettingString HKEY_CURRENT_USER, "Software\VB and VBA Program Settings\Emil's MediaPlayer\MP3medExt\Templates", "", "MP3medExt Templates"
            strF = NTrim(systemdir)
            strF = "RUNDLL32.EXE " & strF & "\MP3medExt.dll,Install"
            Shell strF, vbHide
Hole die SystemDir := C:\Windows\System32 und starte die Registrierung mit Shell.
Aber das System nimmt es nicht an.

Ansonsten läuft der Player unter Win7

EDIT2:
Wird nicht angenommen hab beides versucht.
gruss Emil

Ralf Kaiser 2. Aug 2009 20:04

Re: Alternative für Rundll32.exe
 
Zitat:

Zitat von EWeiss
Leider muss ich festellen das es die unter Win7 nicht mehr gibt.

Komisch. Bei mir ist diese Exe im System32-Verzeichnis zu finden (wo man sie auch erwarten würde)

EDIT: kann natürlich sein, dass irgendein fremdes Setup die Datei "mitgebracht" hat, obwohl ich das nicht glaube...


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz