# Le funzioni nascoste del Rundll32 di Windows #
L'accesso alle funzioni contenute nei componenti del sistema Windows rimane effettivamente riservato agli utenti degli ambienti di programmazione. Alcune funzioni possono tuttavia essere chiamate anche direttamente tramite il programma RUNDLL32.EXE, (da caricare per inserire le istruzioni). Ora verranno spiegate dettagliatamente alcune utili funzioni Rundll e le relative conseguenze. Tutte le funzioni descritte possono essere impostate come script o come righe di istruzioni interne a collegamenti, per essere così utilizzate direttamente. Ulteriori funzioni, già parzialmente note, sono elencate nella tabella in basso. By[Gnomix]

Le funzioni:
rundll32 user,tilechildwindows

rundll32 user,cascadechildwindows

del file USER.EXE provvedono alla disposizione delle finestre sul desktop, ordinando tutte le applicazioni non ridotte a icona rispettivamente come finestre affiancate o come finestre sovrapposte.

La funzione
rundll32 krn1386.exe,exitkernel

è una delle possibilità più radicali per uscire da Windows. Non viene richiesta conferma in caso di dati non salvati e non viene presentato alcun avviso in

caso di file condivisi in rete, neanche qualora questi siano aperti!

Con il comando
rundll32 msprint2.dll,RUNDLL_PrintTestPage

è possibile collaudare una determinata stampante tra varie periferiche collegate. Presenta una finestra con l'elenco di tutte le stampanti installate; selezionando la periferica desiderata, a quest'ultima verrà inviato un foglio di prova.

La selezione manuale dei dispositivi hardware da installare non è più prevista in Windows 98: quest'ultimo è predisposto per periferiche Plug & Play. A questo proposito, è utile la seguente funzione:
rundll32.exe sysdm.cpl,InstallDevice_Rundll

Questa istruzione apre l'applicazione INSTALLAÄIONE GUIDATA NUOVO HARDWARE, che consente di scegliere quale dispositivo installare. Un'installazione così mirata è possibile solo con questa funzione non documentata.

La funzione
rund1132 user,wnetcancelconnection fsa

consente, invece, la disconnessione del Pc da tutte le unità di rete configurate in un determinato server Novell (nell'esempio, "fsa"). A differenza di "netuse /d *", questa istruzione disconnette non tutte le unità di rete configurate, ma solo quelle di un server Netware selezionato. I collegamenti ai server NT non possono essere interrotti.

Alcune istruzioni offrono strade a senso unico: così, non è un problema invertire le funzioni dei tasti del mouse con la funzione
rundll32 user,swapmousebutton

e risparmiarsi in tal modo il passaggio dal PANNELLO DI CONTROLLO.

Attenzione: la configurazione originaria non potrà più essere ripristinata con la stessa procedura.

Le istruzioni:
rundll32 user, setcaretblinktime <n>

rundll32 user, setdoubleclicktime <n>

impostano la frequenza di lampeggiamento del cursore e la velocità del doppio clic del mouse.

Attenzione: non consentono di ripercorrere lo stesso tragitto a ritroso.

I driver della tastiera e del mouse contengono le funzioni sia per attivare, sia per disattivare i dispositivi. Windows consente tuttavia solo la disattivazione. Con le funzioni
rundll32 keyboard,disable

rundll32 mouse,disable

la tastiera o il mouse vengono messi fuori combattimento.

Attenzione: una successiva istruzione "enable" non sortirà invece l'effetto desiderato. Per porre termine alla disattivazione della tastiera o del mouse, l'unica possibilità è quella di riavviare Windows.

Nelle funzioni elencate in questa tabella, per semplicità è stata omessa la parte iniziale "rundll32. Le funzioni tratte dalle biblioteche a 16 bit, come USER.EXE, non distinguono i caratteri maiuscoli e minuscoli, che possono quindi essere usati indifferentemente. Di norma, tali funzioni sono scritte nel riquadro in caratteri minuscoli. Per quanto riguarda le funzioni delle DLL a 32 bit, quali SHELL32.DLL, occorre invece attenersi esattamente ai caratteri maiuscoli e minuscoli utilizzati nella tabella.


Istruzione Effetto
user,exitwindows Chiusura di Windows
user,wnetconnectdialog Apertura della finestra di dialogo di connessione alla rete
usei;wnetdisconnectdialog Apertura della finestra di dialogo di disconnessione alla rete
user,disableoemlayer Blocco del sistema
user,repaintscreen Aggiornamento dello schermo (come F5)
user,setcursorpos Posizionamento del cursore del mouse nell’angolo superiore sinistro dello schermo
Diskcopy,DiskCopyRunDll Apertura della finestra di dialogo Copia Disco
rnaui.dll,RnaWizard/1 Apertura della finestra di dialogo
Accesso remoto V1 = senza immagine iniziale)

Shell,shellexecute Apertura della finestra di Gestione risorse
Shell32,OpenAs RunDLL Apertura della finestra di dialogo Apri con
shell32,SHFormatDrive Apertura della finestra di dialogo Formattazione
shell32,ShellAboutA Apertura della finestra di dialogo di informazioni sulla memoria e sulle risorse
shell32,SHExitWiodowsEx 0 Riavvio di Windows
shell32,SHExitWiodowsEx 1 Chiusura di Windows 98
shell32,SHExitWiodowsEx 2 Avvio del Pc in Windows
shell32,SHExitWiodowsEx –1 Riavvio di Esplora risorse in Windows
shell32,Control_RunDLL Avvio del Pannello di controllo
shell32,Control_RunDLL desk.cpl Avvio del modulo Schermo del Pannello di controllo
shell32,Control_RunDLL, main.cpl @ <n>
<n>: 0=mouse, 1=tastiera, 2=stampanti, 3=Tipi di carattere, 4=Controllo energetico
Avvio del modulo <n> del Pannello di controllo da Main.cpl

<<

Copyright (c) 2000 - 3000 by Ing. Eduardo Palena - Napolifirewall.com