Appeler les commandes RunDLL32 avec un ShellExecute
5 réponses
WonderMan
Bonjour,
J'ai développé un logiciel en C++ avec lequel je souhaiterais lancer
quelques commandes système.
J'ai programmé en particulier un bouton qui permet de faire un
ShellExecute, et je pensais pouvoir lui passer l'une des commandes
décrites sur cette page (par exemple) :
http://www.progmatique.fr/article-62-Rundll.html
mais j'ai à chaque fois des messages d'erreur qui s'affiche.
Ainsi, avec : rundll32 shell,shellexecute
j'obtiens le message : Windows cannot find 'rundll32
shell,shellexecute'
Si je colle la même ligne (rundll32 shell,shellexecute) dans la boite
"Exécuter" de Windows (accessible par le menu Démarrer), j'obtiens le
message : 'The application or DLL C:\WINDOWS\System32\shell.dll is not
a valid windows image'
Bref, y a t-il une syntaxe particulière à utiliser pour que cela puisse
fonctionner ?
Pour info, je travaille sous XP professionnel en version anglaise.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jerome
WonderMan wrote:
Bonjour,
J'ai développé un logiciel en C++ avec lequel je souhaiterais lancer quelques commandes système.
J'ai programmé en particulier un bouton qui permet de faire un ShellExecute, et je pensais pouvoir lui passer l'une des commandes décrites sur cette page (par exemple) : http://www.progmatique.fr/article-62-Rundll.html
mais j'ai à chaque fois des messages d'erreur qui s'affiche. Ainsi, avec : rundll32 shell,shellexecute j'obtiens le message : Windows cannot find 'rundll32 shell,shellexecute'
Si je colle la même ligne (rundll32 shell,shellexecute) dans la boite "Exécuter" de Windows (accessible par le menu Démarrer), j'obtiens le message : 'The application or DLL C:WINDOWSSystem32shell.dll is not a valid windows image'
C'est normal, il y a plein de commandes windows 95-98 sur cete page. le mec a fait du copier-coller à droite-à gauche sans rien comprendre :-)
WonderMan wrote:
Bonjour,
J'ai développé un logiciel en C++ avec lequel je souhaiterais lancer
quelques commandes système.
J'ai programmé en particulier un bouton qui permet de faire un
ShellExecute, et je pensais pouvoir lui passer l'une des commandes
décrites sur cette page (par exemple) :
http://www.progmatique.fr/article-62-Rundll.html
mais j'ai à chaque fois des messages d'erreur qui s'affiche.
Ainsi, avec : rundll32 shell,shellexecute
j'obtiens le message : Windows cannot find 'rundll32 shell,shellexecute'
Si je colle la même ligne (rundll32 shell,shellexecute) dans la boite
"Exécuter" de Windows (accessible par le menu Démarrer), j'obtiens le
message : 'The application or DLL C:WINDOWSSystem32shell.dll is not a
valid windows image'
C'est normal, il y a plein de commandes windows 95-98 sur cete page.
le mec a fait du copier-coller à droite-à gauche sans rien comprendre :-)
J'ai développé un logiciel en C++ avec lequel je souhaiterais lancer quelques commandes système.
J'ai programmé en particulier un bouton qui permet de faire un ShellExecute, et je pensais pouvoir lui passer l'une des commandes décrites sur cette page (par exemple) : http://www.progmatique.fr/article-62-Rundll.html
mais j'ai à chaque fois des messages d'erreur qui s'affiche. Ainsi, avec : rundll32 shell,shellexecute j'obtiens le message : Windows cannot find 'rundll32 shell,shellexecute'
Si je colle la même ligne (rundll32 shell,shellexecute) dans la boite "Exécuter" de Windows (accessible par le menu Démarrer), j'obtiens le message : 'The application or DLL C:WINDOWSSystem32shell.dll is not a valid windows image'
C'est normal, il y a plein de commandes windows 95-98 sur cete page. le mec a fait du copier-coller à droite-à gauche sans rien comprendre :-)
WonderMan
jerome a émis l'idée suivante :
WonderMan wrote:
Bonjour,
J'ai développé un logiciel en C++ avec lequel je souhaiterais lancer quelques commandes système.
J'ai programmé en particulier un bouton qui permet de faire un ShellExecute, et je pensais pouvoir lui passer l'une des commandes décrites sur cette page (par exemple) : http://www.progmatique.fr/article-62-Rundll.html
mais j'ai à chaque fois des messages d'erreur qui s'affiche. Ainsi, avec : rundll32 shell,shellexecute j'obtiens le message : Windows cannot find 'rundll32 shell,shellexecute'
Si je colle la même ligne (rundll32 shell,shellexecute) dans la boite "Exécuter" de Windows (accessible par le menu Démarrer), j'obtiens le message : 'The application or DLL C:WINDOWSSystem32shell.dll is not a valid windows image'
C'est normal, il y a plein de commandes windows 95-98 sur cete page. le mec a fait du copier-coller à droite-à gauche sans rien comprendre :-)
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm Ca marche en passant par la commande Executer de Windows, mais toujours pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
jerome a émis l'idée suivante :
WonderMan wrote:
Bonjour,
J'ai développé un logiciel en C++ avec lequel je souhaiterais lancer
quelques commandes système.
J'ai programmé en particulier un bouton qui permet de faire un
ShellExecute, et je pensais pouvoir lui passer l'une des commandes décrites
sur cette page (par exemple) :
http://www.progmatique.fr/article-62-Rundll.html
mais j'ai à chaque fois des messages d'erreur qui s'affiche.
Ainsi, avec : rundll32 shell,shellexecute
j'obtiens le message : Windows cannot find 'rundll32 shell,shellexecute'
Si je colle la même ligne (rundll32 shell,shellexecute) dans la boite
"Exécuter" de Windows (accessible par le menu Démarrer), j'obtiens le
message : 'The application or DLL C:WINDOWSSystem32shell.dll is not a
valid windows image'
C'est normal, il y a plein de commandes windows 95-98 sur cete page.
le mec a fait du copier-coller à droite-à gauche sans rien comprendre :-)
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm
Ca marche en passant par la commande Executer de Windows, mais toujours
pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
J'ai développé un logiciel en C++ avec lequel je souhaiterais lancer quelques commandes système.
J'ai programmé en particulier un bouton qui permet de faire un ShellExecute, et je pensais pouvoir lui passer l'une des commandes décrites sur cette page (par exemple) : http://www.progmatique.fr/article-62-Rundll.html
mais j'ai à chaque fois des messages d'erreur qui s'affiche. Ainsi, avec : rundll32 shell,shellexecute j'obtiens le message : Windows cannot find 'rundll32 shell,shellexecute'
Si je colle la même ligne (rundll32 shell,shellexecute) dans la boite "Exécuter" de Windows (accessible par le menu Démarrer), j'obtiens le message : 'The application or DLL C:WINDOWSSystem32shell.dll is not a valid windows image'
C'est normal, il y a plein de commandes windows 95-98 sur cete page. le mec a fait du copier-coller à droite-à gauche sans rien comprendre :-)
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm Ca marche en passant par la commande Executer de Windows, mais toujours pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm Ca marche en passant par la commande Executer de Windows, mais toujours pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
La syntaxe de la doc => ShellExecute(NULL, "open", "rundll32.exe", "SHELL32.DLL,Control_RunDLL desk.cpl,,0", "",SW_SHOW);
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm
Ca marche en passant par la commande Executer de Windows, mais toujours
pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
La syntaxe de la doc =>
ShellExecute(NULL, "open", "rundll32.exe", "SHELL32.DLL,Control_RunDLL
desk.cpl,,0", "",SW_SHOW);
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm Ca marche en passant par la commande Executer de Windows, mais toujours pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
La syntaxe de la doc => ShellExecute(NULL, "open", "rundll32.exe", "SHELL32.DLL,Control_RunDLL desk.cpl,,0", "",SW_SHOW);
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm Ca marche en passant par la commande Executer de Windows, mais toujours pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
Rundll32 charge et exécute dynamiquement CERTAINES DLL qui doivent répondre à certains CRITÈRES . De plus, la SYNTAXE d'exécution de "rundll32" est TRÈS STRICTE .
1)nom_de_dll ------------ Comporte ou non le chemin complet de la DLL (tout dépend de sa localisation, si son répertoire fait partie ou non de la variable d'environnement PATH)
ATTENTION : pour éviter tout pb, ce nom doit être le NOM COURT !!! Aucun espace ou caractère "folklo" n'est autorisé ! p.ex. , si on veut appeller la DLL suivante D:Program FilesMicrosoft OfficeOfficeautoclip.dll il faudra taper (p.ex.) : rundll32 d:PROGRA~1MICROS~1OFFICEautoclip.dll,ACBeginSearch
2)La VIRGULE ------------ Placée entre le nom de la dll et le point d'entrée, elle est TRES IMPORTANTE. Elle doit être "collée" entre eux, sans aucun espace.
3)Le point d'entrée ------------------- C'est le nom de la fonction appelée dans la DLL. (Application Programming Interface)
Prototype de cette fonction : void CALLBACK point_d_entree(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow);
NB: sous NT, le "point_d_entree" pourra être double : - un suivi de "W", (UNICODE) - un suivi de "A", (ANSI)
Paramètres du point d'entrée de la DLL ===================================== hwnd : handle de fenêtre propriétaire des autres fenêtres de la DLL hinst : handle d'instance de la DLL lpszCmdLine : chaine ASCIIZ de paramètres nCmdShow : flag d'affichage de la fenêtre éventuellement affichée 0 = cachée 1 = normal 2 = iconifiée 3 = maximale ...
Exemple : RUNDLL.EXE SETUPX.DLL,InstallHinfSection 132 C:WINDOWSINFSHELL.INF
-> Rundll appelle l'API "InstallHinfSection()" de "Setupx.dll" et lui passe les parametres suivants :
hwnd handle de la fenêtre dans laquelle on exécute RUNDDL hinst HINSTANCE de SETUPX.DLL lpszCmdLine "132 C:WINDOWSINFSHELL.INF" nCmdShow (par défaut : normal)
Exemples pratiques ================= - Lancement direct d'un module du panneau de config rundll32 shell32.dll,Control_RunDLL,tweakui.cpl
Là il y a un double lancement ! On exécute shell32.dll, en utilisant l'API "Control_RunDLL", auquel on indique de charger le module de config de "TweakUI" (des powertoys)
- Lancement d'une connexion à distance : rundll rnaui.dll,RnaDial Free dans cet exemple, "Free" est le nom de la connexion à distance
- Création d'un raccourci permettant de quitter Windows rapidement : rundll32 user32.dll,ExitWindowsEx
ATTENTION! ici "case sensitive" !. Taper exactement "ExitWindowsEx" et non "exitwindowsex"
- Affichage du panneau "Supprimer le périphérique en toute sécurité" (USB et/ou PCMCIA) rundll32.exe shell32.dll,Control_RunDLL hotplug.dll
- Aspect du menu Démarrer : rundll32.exe shell32.dll,Options_RunDLL 1
- Affichage d'un raccourci Internet : rundll32.exe shdocvw.dll,OpenURL "nom-du-raccourci"
- Ouvrir un fichier zip et présenter le résultat du dézippage sous la forme d'un dossier : rundll32.exe zipfldr.dll,RouteTheCall "nom-du fichier-zip"
- Définition d'une imprimante réseau comme imprimante par défaut : rundll32.exe printui.dll,PrintUIEntry /n serveurimp_partagée /y
- Création d'un raccourci dans un dossier : rundll32.exe appwiz.cpl,NewLinkHere "nom-du-dossier"
- Verrouiller une station : rundll32 user32.dll,LockWorkStation
En ce qui concerne les "applets" du panneau de config, on peut utiliser RUNDLL32, mais franchement, il est beaucoup plus SIMPLE de les appeler DIRECTEMENT ! Lorsqu'une applet a plusieurs fonctions, on peut en sélectionner une par un nombre tapé à la suite du nom de l'applet :
Lancement direct du panneau de config "souris" : rundll32 shell32.dll,Control_RunDLL main.cpl,@0 ou (plus simple) : main.cpl @0
Lancement direct du panneau de config "clavier" : rundll32 shell32.dll,Control_RunDLL main.cpl,@1 ou (plus simple) : main.cpl @1
Là aussi, si on précise un nombre après l'index, cela désigne le n° d'onglet! main.cpl @1,0 => clavier (vitesse) main.cpl @1,1 => clavier (paramètres régionaux) main.cpl @1,2 => clavier (matériel)
Attention : ce n° d'onglet n'est pris en compte que pour les panneaux "standards" (p.ex. ça ne marche pas avec le panneau de config souris Logitech)
Autres exemples : ----------------- "options d'alimentation" powercfg.cpl
"ajout/suppression de programmes" appwiz.cpl
"ajout de matériel" hdwwiz.cpl
"Gestion ODBC" odbccp32.cpl
"Propriétés son" mmsys.cpl
"Contrôle joystick" joy.cpl
"Date et heure" timedate.cpl
"Accessibilité" access.cpl
"Connexions réseau" ncpa.cpl
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] http://www.bellamyjc.org ou http://jc.bellamy.free.fr
"WonderMan" <none@none.com> a écrit dans le message de
news:mn.eb547d842adb560f.88081@none.com...
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm
Ca marche en passant par la commande Executer de Windows, mais toujours
pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
Rundll32 charge et exécute dynamiquement CERTAINES DLL qui doivent répondre
à certains CRITÈRES .
De plus, la SYNTAXE d'exécution de "rundll32" est TRÈS STRICTE .
1)nom_de_dll
------------
Comporte ou non le chemin complet de la DLL
(tout dépend de sa localisation, si son répertoire fait partie ou non de la
variable d'environnement PATH)
ATTENTION : pour éviter tout pb, ce nom doit être le NOM COURT !!!
Aucun espace ou caractère "folklo" n'est autorisé !
p.ex. , si on veut appeller la DLL suivante
D:Program FilesMicrosoft OfficeOfficeautoclip.dll
il faudra taper (p.ex.) :
rundll32 d:PROGRA~1MICROS~1OFFICEautoclip.dll,ACBeginSearch
2)La VIRGULE
------------
Placée entre le nom de la dll et le point d'entrée, elle est TRES
IMPORTANTE.
Elle doit être "collée" entre eux, sans aucun espace.
3)Le point d'entrée
-------------------
C'est le nom de la fonction appelée dans la DLL.
(Application Programming Interface)
Prototype de cette fonction :
void CALLBACK
point_d_entree(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int
nCmdShow);
NB: sous NT, le "point_d_entree" pourra être double :
- un suivi de "W", (UNICODE)
- un suivi de "A", (ANSI)
Paramètres du point d'entrée de la DLL
===================================== hwnd :
handle de fenêtre propriétaire des autres fenêtres de la DLL
hinst :
handle d'instance de la DLL
lpszCmdLine :
chaine ASCIIZ de paramètres
nCmdShow :
flag d'affichage de la fenêtre éventuellement affichée
0 = cachée
1 = normal
2 = iconifiée
3 = maximale
...
Exemple :
RUNDLL.EXE SETUPX.DLL,InstallHinfSection 132 C:WINDOWSINFSHELL.INF
-> Rundll appelle l'API "InstallHinfSection()" de "Setupx.dll" et lui passe
les parametres suivants :
hwnd handle de la fenêtre dans laquelle on exécute RUNDDL
hinst HINSTANCE de SETUPX.DLL
lpszCmdLine "132 C:WINDOWSINFSHELL.INF"
nCmdShow (par défaut : normal)
Exemples pratiques
=================
- Lancement direct d'un module du panneau de config
rundll32 shell32.dll,Control_RunDLL,tweakui.cpl
Là il y a un double lancement !
On exécute shell32.dll, en utilisant l'API "Control_RunDLL", auquel on
indique de charger le module de config de "TweakUI" (des powertoys)
- Lancement d'une connexion à distance :
rundll rnaui.dll,RnaDial Free
dans cet exemple, "Free" est le nom de la connexion à distance
- Création d'un raccourci permettant de quitter Windows rapidement :
rundll32 user32.dll,ExitWindowsEx
ATTENTION! ici "case sensitive" !.
Taper exactement "ExitWindowsEx" et non "exitwindowsex"
- Affichage du panneau "Supprimer le périphérique en toute sécurité"
(USB et/ou PCMCIA)
rundll32.exe shell32.dll,Control_RunDLL hotplug.dll
- Aspect du menu Démarrer :
rundll32.exe shell32.dll,Options_RunDLL 1
- Affichage d'un raccourci Internet :
rundll32.exe shdocvw.dll,OpenURL "nom-du-raccourci"
- Ouvrir un fichier zip et présenter le résultat du
dézippage sous la forme d'un dossier :
rundll32.exe zipfldr.dll,RouteTheCall "nom-du fichier-zip"
- Définition d'une imprimante réseau comme imprimante par défaut :
rundll32.exe printui.dll,PrintUIEntry /n \serveurimp_partagée /y
- Création d'un raccourci dans un dossier :
rundll32.exe appwiz.cpl,NewLinkHere "nom-du-dossier"
- Verrouiller une station :
rundll32 user32.dll,LockWorkStation
En ce qui concerne les "applets" du panneau de config, on peut utiliser
RUNDLL32, mais franchement, il est beaucoup plus SIMPLE de les appeler
DIRECTEMENT !
Lorsqu'une applet a plusieurs fonctions, on peut en sélectionner une par un
nombre tapé à la suite du nom de l'applet :
Lancement direct du panneau de config "souris" :
rundll32 shell32.dll,Control_RunDLL main.cpl,@0
ou (plus simple) :
main.cpl @0
Lancement direct du panneau de config "clavier" :
rundll32 shell32.dll,Control_RunDLL main.cpl,@1
ou (plus simple) :
main.cpl @1
Là aussi, si on précise un nombre après l'index, cela désigne le n°
d'onglet!
main.cpl @1,0
=> clavier (vitesse)
main.cpl @1,1
=> clavier (paramètres régionaux)
main.cpl @1,2
=> clavier (matériel)
Attention :
ce n° d'onglet n'est pris en compte que pour les panneaux "standards"
(p.ex. ça ne marche pas avec le panneau de config souris Logitech)
Autres exemples :
-----------------
"options d'alimentation"
powercfg.cpl
"ajout/suppression de programmes"
appwiz.cpl
"ajout de matériel"
hdwwiz.cpl
"Gestion ODBC"
odbccp32.cpl
"Propriétés son"
mmsys.cpl
"Contrôle joystick"
joy.cpl
"Date et heure"
timedate.cpl
"Accessibilité"
access.cpl
"Connexions réseau"
ncpa.cpl
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr
tiré de la page : http://vlaurie.com/computers2/Articles/rundll32.htm Ca marche en passant par la commande Executer de Windows, mais toujours pas avec ShellExecute.
Je ne vois toujours pas quelle est la syntaxe à utiliser ?
Rundll32 charge et exécute dynamiquement CERTAINES DLL qui doivent répondre à certains CRITÈRES . De plus, la SYNTAXE d'exécution de "rundll32" est TRÈS STRICTE .
1)nom_de_dll ------------ Comporte ou non le chemin complet de la DLL (tout dépend de sa localisation, si son répertoire fait partie ou non de la variable d'environnement PATH)
ATTENTION : pour éviter tout pb, ce nom doit être le NOM COURT !!! Aucun espace ou caractère "folklo" n'est autorisé ! p.ex. , si on veut appeller la DLL suivante D:Program FilesMicrosoft OfficeOfficeautoclip.dll il faudra taper (p.ex.) : rundll32 d:PROGRA~1MICROS~1OFFICEautoclip.dll,ACBeginSearch
2)La VIRGULE ------------ Placée entre le nom de la dll et le point d'entrée, elle est TRES IMPORTANTE. Elle doit être "collée" entre eux, sans aucun espace.
3)Le point d'entrée ------------------- C'est le nom de la fonction appelée dans la DLL. (Application Programming Interface)
Prototype de cette fonction : void CALLBACK point_d_entree(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow);
NB: sous NT, le "point_d_entree" pourra être double : - un suivi de "W", (UNICODE) - un suivi de "A", (ANSI)
Paramètres du point d'entrée de la DLL ===================================== hwnd : handle de fenêtre propriétaire des autres fenêtres de la DLL hinst : handle d'instance de la DLL lpszCmdLine : chaine ASCIIZ de paramètres nCmdShow : flag d'affichage de la fenêtre éventuellement affichée 0 = cachée 1 = normal 2 = iconifiée 3 = maximale ...
Exemple : RUNDLL.EXE SETUPX.DLL,InstallHinfSection 132 C:WINDOWSINFSHELL.INF
-> Rundll appelle l'API "InstallHinfSection()" de "Setupx.dll" et lui passe les parametres suivants :
hwnd handle de la fenêtre dans laquelle on exécute RUNDDL hinst HINSTANCE de SETUPX.DLL lpszCmdLine "132 C:WINDOWSINFSHELL.INF" nCmdShow (par défaut : normal)
Exemples pratiques ================= - Lancement direct d'un module du panneau de config rundll32 shell32.dll,Control_RunDLL,tweakui.cpl
Là il y a un double lancement ! On exécute shell32.dll, en utilisant l'API "Control_RunDLL", auquel on indique de charger le module de config de "TweakUI" (des powertoys)
- Lancement d'une connexion à distance : rundll rnaui.dll,RnaDial Free dans cet exemple, "Free" est le nom de la connexion à distance
- Création d'un raccourci permettant de quitter Windows rapidement : rundll32 user32.dll,ExitWindowsEx
ATTENTION! ici "case sensitive" !. Taper exactement "ExitWindowsEx" et non "exitwindowsex"
- Affichage du panneau "Supprimer le périphérique en toute sécurité" (USB et/ou PCMCIA) rundll32.exe shell32.dll,Control_RunDLL hotplug.dll
- Aspect du menu Démarrer : rundll32.exe shell32.dll,Options_RunDLL 1
- Affichage d'un raccourci Internet : rundll32.exe shdocvw.dll,OpenURL "nom-du-raccourci"
- Ouvrir un fichier zip et présenter le résultat du dézippage sous la forme d'un dossier : rundll32.exe zipfldr.dll,RouteTheCall "nom-du fichier-zip"
- Définition d'une imprimante réseau comme imprimante par défaut : rundll32.exe printui.dll,PrintUIEntry /n serveurimp_partagée /y
- Création d'un raccourci dans un dossier : rundll32.exe appwiz.cpl,NewLinkHere "nom-du-dossier"
- Verrouiller une station : rundll32 user32.dll,LockWorkStation
En ce qui concerne les "applets" du panneau de config, on peut utiliser RUNDLL32, mais franchement, il est beaucoup plus SIMPLE de les appeler DIRECTEMENT ! Lorsqu'une applet a plusieurs fonctions, on peut en sélectionner une par un nombre tapé à la suite du nom de l'applet :
Lancement direct du panneau de config "souris" : rundll32 shell32.dll,Control_RunDLL main.cpl,@0 ou (plus simple) : main.cpl @0
Lancement direct du panneau de config "clavier" : rundll32 shell32.dll,Control_RunDLL main.cpl,@1 ou (plus simple) : main.cpl @1
Là aussi, si on précise un nombre après l'index, cela désigne le n° d'onglet! main.cpl @1,0 => clavier (vitesse) main.cpl @1,1 => clavier (paramètres régionaux) main.cpl @1,2 => clavier (matériel)
Attention : ce n° d'onglet n'est pris en compte que pour les panneaux "standards" (p.ex. ça ne marche pas avec le panneau de config souris Logitech)
Autres exemples : ----------------- "options d'alimentation" powercfg.cpl
"ajout/suppression de programmes" appwiz.cpl
"ajout de matériel" hdwwiz.cpl
"Gestion ODBC" odbccp32.cpl
"Propriétés son" mmsys.cpl
"Contrôle joystick" joy.cpl
"Date et heure" timedate.cpl
"Accessibilité" access.cpl
"Connexions réseau" ncpa.cpl
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] http://www.bellamyjc.org ou http://jc.bellamy.free.fr
WonderMan
Jean-Claude BELLAMY avait soumis l'idée :
Rundll32 charge et exécute dynamiquement CERTAINES DLL qui doivent répondre à certains CRITÈRES .
Merci beaucoup pour cette explication détaillée !
Jean-Claude BELLAMY avait soumis l'idée :
Rundll32 charge et exécute dynamiquement CERTAINES DLL qui doivent répondre
à certains CRITÈRES .