2010-05-24 17 views
9

Sto scrivendo un'applicazione che aggiorna alcuni driver. Tuttavia i driver sono "in uso" e non possono essere eliminati a meno che non riavvii il mio computer.Eliminazione di file e cartelle bloccati

Quindi, come posso scrivere un'applicazione per eliminare questi driver bloccati senza riavviare il PC. Se il riavvio DEVE verificarsi, allora come posso riavviare automaticamente la mia applicazione quando il computer si riavvia e cancella quei file?

+3

Per inciso, la sostituzione dei driver è uno dei motivi principali per cui Windows richiede ancora il riavvio. Ora, alcuni driver non sembrano averne più bisogno (i driver nVidia non richiedono il riavvio, ma disabilitano momentaneamente il display). – Powerlord

+2

@R. Bemrose: Se ho capito bene, funziona separando il driver in un core che rimane caricato e la carne effettiva del driver, che può essere scaricata e sostituita. In altre parole, OP potrebbe non avere alcuna opzione. –

+0

Beh, sono driver di stampa e le stampanti non sono sempre in uso. Ho imparato come eseguire il servizio di spooler. –

risposta

5

Per Windows, è possibile "pianificare" lo spostamento/eliminazione di file in un riavvio avviando l'API MoveFileEx (oppure il registro come descritto).

0

Se è possibile disabilitare l'hardware che utilizza i driver, questo potrebbe consentire il download e la sostituzione del driver.

+0

Come lo disabiliti con il codice? –

+0

http://stackoverflow.com/questions/1438371/win32-api-function-to-programatically-enable-disable-device –

Problemi correlati