3

次のコードを取得しました。

    aReg = ConnectRegistry(None,HKEY_CURRENT_USER)
aKey = OpenKey(aReg, r"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", 0, KEY_WRITE)
try:   
   SetValueEx(aKey,registry_key_name,0, REG_SZ, r"" + folder + "\" + file_name) 
except EnvironmentError:                                          
    print "Encountered problems writing into the Registry..."
CloseKey(aKey)
CloseKey(aReg)

まだ存在しない場合はチェックを追加したいので、そのようなキーがない場合にのみ追加します

4

1 に答える 1

5

この質問から、レジストリキーが存在しないと仮定して、例外を適切に使用_winreg.OpenKeyおよび処理することが最善の選択肢であると思います。WindowsError

from _winreg import *
exists = True
aReg = ConnectRegistry(None,HKEY_CURRENT_USER)
try:
    aKey = OpenKey(aReg, r"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", 0, KEY_WRITE)
except WindowsError:
    exists = False

try:
    if not exists:
        SetValueEx(aKey,registry_key_name,0, REG_SZ, r"" + folder + "\" + file_name) 
except EnvironmentError:                                          
    print "Encountered problems writing into the Registry..."

CloseKey(aKey)
CloseKey(aReg)
于 2013-03-29T02:56:16.050 に答える