2013-10-18 17 views
6

Sono nuovo di Python. Voglio cancellare la chiave che è nel regedit usando lo script python.Come eliminare la chiave di registro di un'applicazione dal regedit usando lo script python?

regedit vista ad albero per la mia domanda chiave

HKEY_CURRENT_USER 
| 
|_Software 
     | 
     |_Applications 
        | 
        |_Application 
          |_Test1 
          |_Test2 

In questo, voglio cancellare chiave Test1 utilizzando script python.

Ho usato qui di seguito lo script

import _winreg 
Key_Name=r'Software/Applications/Application/Test1' 
Key=_winreg.OpenKey(_winreg.HKEY_CURRENT_USER, Key_Name, 0, _winreg.KEY_ALL_ACCESS) 
_winreg.DeleteKey(key) 

Errore:

Traceback (most recent call last): 
    File "C:\Users\Test\workspace\Test\DeletePreferences.py", line 9, in <module> 
    key=_winreg.OpenKey(_winreg.HKEY_CURRENT_USER, r'Software/Applications/Application/Test1', 0, _winreg.KEY_ALL_ACCESS) 
WindowsError: [Error 2] The system cannot find the file specified 

Qualcuno può suggerire una soluzione per questo?

+0

l'errore sembra molto chiaro - la chiave nel Registro di sistema non è stato trovato (molto probabilmente perché non è lì) –

risposta

3

Utilizzare la barra rovesciata (\), non la barra diretta (/). E _winreg.DeleteKey richiede almeno due argomenti.

import _winreg 
Key_Name = r'Software\Qube Cinema\QubeMaster Pro' 
key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, Key_Name, 0, _winreg.KEY_ALL_ACCESS) 
_winreg.DeleteKey(key, 'Test1') 
+0

Grazie uomo ... il suo lavoro .. – cgsabari

+0

è possibile la ricerca è "Test1" chiave è nella chiave di registro o no. se lo è, dovremmo eliminare la chiave, altrimenti abbiamo generato l'errore. script python ?? – cgsabari

+0

@cgsabari, Per quanto ne so, [_winreg] (http://docs.python.org/2/library/_winreg.html) non fornisce funzionalità di ricerca. Che ne dici di pubblicare una nuova domanda al riguardo? – falsetru

Problemi correlati