OpenBCM V1.07b3 (WIN32)

Packet Radio Mailbox

ON0AR

[BBS Antwerpen]

 Login: GUEST





  
F5PBG  > WIN2K    12.08.04 12:11l 132 Lines 3853 Bytes #999 (0) @ FRANCA
BID : 30646!F5PBG
Read: GUEST ON4EV
Subj: Rundll 32
Path: ON0AR<ON0AR<VE2PAK<F6BVP<F1HCI<F4CEP<F6KBI<F6KBI<F5PBG<F5PBG
Sent: 040729/1511Z 30646@F5PBG.#31.FMLR.FRA.EU [96186] FBB7.01.35 alpha
From: F5PBG@F5PBG.#31.FMLR.FRA.EU
To  : WIN2K@FRANCA

Message 138/2004

<<

>
> Pourriez vous m'indiquer … quoi correspond "Rundll 32",
>

"Rundll.exe"  (16 bis) et "rundll32.exe" (32 bits) est une application
qui permet d'ex‚cuter des fonctions contenues dans une DLL.
Une  DLL  n'est pas autonome, et ne peut ˆtre app‚l‚e qu'… partir d'un
programme.
Cela  oblige  donc  … normalement d‚velopper une appli sp‚cifique pour
l'utiliser.

Rundll32 permet de se passer de cette phase, en chargeant et ex‚cutant
dynamiquement certaines DLL trŠs utiles et courantes.
Je  dis  bien  "certaines",  car  elles  doivent  r‚pondre  … certains
critŠres.

De plus, la syntaxe d'ex‚cution de rundll32 est trŠs stricte.

SYNTAXE
=======
    RUNDLL32.EXE <nom_de_dll>,<point_d_entree> <arguments optionels>

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 Files\Microsoft Office\Office\autoclip.dll
il faudra taper (p.ex.) :
   rundll32 d:\PROGRA~1\MICROS~1\OFFICE\autoclip.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.
Ces  noms  de  fonctions  sont commun‚ment d‚sign‚s sous l'appellation
d'API.

Prototype de cette fonction (pour les d‚veloppeurs) :
En 16 bits :
void FAR PASCAL __loadds
  point_d_entree(HWND hwnd,HINSTANCE hinst,LPSTR lpszCmdLine, int nCmdShow);

En 32 bits :
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:\WINDOWS\INF\SHELL.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:\WINDOWS\INF\SHELL.INF"
    nCmdShow =
        (par d‚faut : normal)

Exemples pratiques
==================

1)Lancement direct d'un module du panneau de config
    rundll32 shell32.dll,Control_RunDLL,tweakui.cpl

La 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)

2)Lancement d'une connexion … distance :
    rundll rnaui.dll,RnaDial Free
    dans cet exemple, "Free" est le nom de la connexion … distance

3)Cr‚ation d'un raccourci permettant de quitter Windows rapidement :
    Sous Win9x :
        rundll user.exe,exitwindows
    Sous NT/W2k/XP :
        rundll32 user32.dll,ExitWindowsEx

    ATTENTION! ici "case sensitive" !.
    Taper exactement "ExitWindowsEx"  et non "exitwindowsex"


-- 
May the Force be with You!
La Connaissance s'accroŒt quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.net
Jean-Claude.Bellamy@wanadoo.fr * JC.Bellamy@free.fr

                                                >>


Read previous mail | Read next mail


 01.06.2024 08:30:04lGo back Go up