Che cos’è il processo Rundll32.exe e che cosa fa?

Rundll32.exe consente ai file DLL (Dynamic Link Library) di essere eseguiti da altre applicazioni. Senza il processo rundll32.exe, le applicazioni non sarebbero in grado di caricare il codice della libreria e di funzionare correttamente. Da utente "normale" del computer, non avari il bisogno di interagire direttamente con Rundll32.exe.


Rundll32.exe e file DLL

Quasi tutte le applicazioni devono utilizzare i file di libreria di collegamento dinamico di Windows. Questi file di libreria consentono alle applicazioni di richiamare funzioni specifiche in Windows.

  • Visualizzazione di finestre e altri oggetti per un'interfaccia utente grafica.
  • Riproduzione di suoni utilizzando il driver audio e l'hardware del computer.
  • Trasferimento di input e output da hardware come tastiera e mouse
  • Archiviazione delle informazioni nella memoria di sistema.
  • Accesso a tutti gli accessori collegati al computer.

Ci sono più file DLL che si trovano in tutto il sistema operativo Windows, ma nessuna di queste librerie è accessibile senza passare attraverso Rundll32.exe. Il processo funge da gateway per tutte le applicazioni per accedere a tali librerie.


Come funziona Rundll32.exe

Le applicazioni chiamano Rundll32.exe ogni volta che l'applicazione deve accedere a una funzione di libreria di Windows.

A seguire il funzionamento del processo.

  1. I programmatori specificano Rundll32.exe durante la scrittura di un'applicazione. Ad esempio, per accedere alle librerie di riconoscimento vocale durante la scrittura di un'applicazione in Visual Basic, il programmatore scriverà una riga come mostrato di seguito.

    Process.Start ("rundll32.exe", "C: Windows system32 speech speechux SpeechUX.dll, RunWizard UserTraining")

  2. Questo comando richiama l'applicazione Rundll32.exe e le dice di fornire accesso all'applicazione ai componenti RunWizard UserTraining trovati all'interno della libreria SpeechUX.dll archiviata nella directory System32.
  3. Il programmatore può quindi chiamare funzioni specifiche trovate all'interno di quei componenti. Ad esempio, questi potrebbero includere l'addestramento al riconoscimento vocale utilizzando il microfono. Senza l'eseguibile Rundll32.exe, le applicazioni non avrebbero accesso a queste funzioni avanzate.

Ogni volta che un'applicazione avvia Rundll32.exe, vedrai una nuova istanza di quel processo mostrata in Task Manager. Ogni istanza ha quattro parametri principali che aiutano l'applicazione e il sistema operativo a tenere traccia del processo.

  • hwnd: L'handle (ID di identificazione) della finestra creata dalla DLL
  • hinst: L'handle dell'istanza di processo avviata dalla chiamata DLL
  • lpszCmdLine: Riga di comando utilizzata per avviare la libreria DLL
  • nCmdShow: Descrive come dovrebbe essere visualizzata la finestra della DLL se è presente una finestra associata

Se vedi più processi "Rundll32.exe" in Task Explorer, ciò è normale. Un nuovo processo Rundll32.exe viene avviato ogni volta che un'altra applicazione lo chiama.


Errori comuni di Rundll32.exe

L'errore più comune relativo a Rundll32.exe è quello relativo al runtime. Ciò si verifica in genere quando un codice dell'applicazione scritto in modo errato chiude l'applicazione senza terminare correttamente le istanze di Rundll32.exe avviate in precedenza.

Questo errore non causerà alcun problema con il tuo computer. Tuttavia, una volta riavviato il computer, eliminera' tutti i thread Rundll32.exe avviati e cancellerà la memoria da essi utilizzata.

Un malware potrebbe anche essere causa di errori Rundll32.exe.

  • Il malware installa file di virus che hanno lo stesso nome di Rundll32.exe. Non ti sara' possibile riconoscere il file infetto se non con l'aiuto di un software antivirus che infine lo eliminera' dal tuo sistema.
  • Il malware può danneggiare l'applicazione Rundll32.exe, modificando il file in modo che non funzioni più correttamente quando le applicazioni tentano di chiamarlo.

In entrambi i casi, ci sono un paio di cose che dovresti fare per ripulire la situazione nel sistema.

  1. Utilizzare il comando Scannow per identificare i file principali di Windows danneggiati. Vai su Start e digita CMD. Fare clic con il tasto destro del mouse su Prompt dei comandi e selezionare Esegui come amministratore.

  2. Digitare il comando SFC / scannow. Questo avvierà una scansione del sistema che cercherà e identificherà eventuali file di sistema corrotti.

  3. Se l'errore Rundll32.exe non dovesse essere risolto dopo la scansione, prova a eseguire un comando di ripristino dello stato di manutenzione della DISM. Questa utility controlla l'integrità del sistema operativo Windows e tenterà di ripristinare i file di sistema di base danneggiati. Sempre nella finestra del prompt dei comandi amministrativo, digitare DISM / Online / Cleanup-Image / RestoreHealth.

  4. Se nessuno di questi comandi dovesse funzionare significa che il problema non è un file di sistema di Windows danneggiato ma un malware camuffato da Rundll32.exe. Il modo migliore per uscirne fuori è eseguire una scansione completa del sistema con il software antivirus.

  5. Se il problema non viene risolto a questo punto, l'unica opzione potrebbe essere ripristinare l'installazione del sistema operativo Windows.

Lascia un commento