您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關(guān)Python中怎么操作注冊(cè)表,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
Python操作注冊(cè)表步驟之1.打開(kāi)注冊(cè)表
對(duì)注冊(cè)表進(jìn)行操作前,必須打開(kāi)注冊(cè)表。在Python中,可以使用以下兩個(gè)函數(shù):RegOpenKey和RegOpenKeyEx。其函數(shù)原型分別如下所示。
RegOpenKey(key, subKey , reserved , sam)RegOpenKeyEx
(key, subKey , reserved , sam)
兩個(gè)函數(shù)的參數(shù)一樣。參數(shù)含義如下。
Python字符串顯示實(shí)際應(yīng)用技巧分享
Python PAMIE模塊實(shí)現(xiàn)IE自動(dòng)化
Python HTTP操作基本應(yīng)用方式簡(jiǎn)述
Python字符基本操作技巧分享
Python操作Sqlite正確實(shí)現(xiàn)方法解析
key:必須為表10-1中列出的項(xiàng)。
subKey:要打開(kāi)的子項(xiàng)。
reserved:必須為0。
sam:對(duì)打開(kāi)的子項(xiàng)進(jìn)行的操作,包括win32con.KEY_ALL_ACCESS、win32con.KEY_READ、win32con. KEY_WRITE等。
以下實(shí)例實(shí)現(xiàn)打開(kāi)注冊(cè)表“HKEY_CURRENT_USER\Software”項(xiàng)。
>>> import win32api # 導(dǎo)入win32api模塊
>>> import win32con # 導(dǎo)入win32con模塊# 使用RegOpenKey打開(kāi)注冊(cè)表項(xiàng)
>>> key = win32api.RegOpenKey(win32con.HKEY_CURRENT_USER,
'Software',0,win32con.KEY_READ)>>> print key # key為打開(kāi)的項(xiàng)的句柄
Python操作注冊(cè)表步驟之2.關(guān)閉注冊(cè)表
打開(kāi)的注冊(cè)表,在操作完成后,需要關(guān)閉。在Python中使用RegCloseKey函數(shù)關(guān)閉打開(kāi)的注冊(cè)表項(xiàng)。其函數(shù)原型如下所示。
RegCloseKey(key)
其參數(shù)只有一個(gè),其含義如下。
key:已經(jīng)打開(kāi)的注冊(cè)表項(xiàng)。
以下實(shí)例關(guān)閉一個(gè)已經(jīng)打開(kāi)的注冊(cè)表項(xiàng)。
# 關(guān)閉剛才打開(kāi)的注冊(cè)表項(xiàng) >>> win32api.RegCloseKey(key)>>> print key
Python操作注冊(cè)表步驟之3.讀取項(xiàng)值
在打開(kāi)注冊(cè)表項(xiàng)以后,可以使用RegQueryValue函數(shù)讀取項(xiàng)的默認(rèn)值。如果要讀取某一項(xiàng)值,可以使用RegQueryValueEx函數(shù)。其函數(shù)原型分別如下所示。
RegQueryValue(key, subKey )RegQueryValueEx(key, valueName )
對(duì)于RegQueryValue,其參數(shù)含義如下。
key:已打開(kāi)的注冊(cè)表項(xiàng)的句柄。
subKey:要操作的子項(xiàng)。
對(duì)于RegQueryValueEx,其參數(shù)含義如下。
key:已經(jīng)打開(kāi)的注冊(cè)表項(xiàng)的句柄。
valueName:要讀取的項(xiàng)值名稱。
以下實(shí)例實(shí)現(xiàn)對(duì)“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer”項(xiàng)的操作。
>>> import win32api
>>> import win32con# 打開(kāi)“HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Internet Explorer”項(xiàng)>>> key = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE,
'SOFTWARE\\Microsoft\\Internet Explorer',0, win32con.KEY_ALL_ACCESS)>>> win32api.RegQueryValue(key,'')
# 讀取項(xiàng)的默認(rèn)值''
# 輸出為空,表示其默認(rèn)值未設(shè)置#讀取項(xiàng)值名稱為Version的項(xiàng)值數(shù)據(jù),
也就是Internet Explorer的版本>>> win32api.RegQueryValueEx(key,'Version') ('6.0.2900.2180', 1)
>>> win32api.RegQueryInfoKey(key)
# RegQueryInfoKey函數(shù)查詢項(xiàng)的基本信息(26, 7, 128178812229687500L)
# 返回項(xiàng)的子項(xiàng)數(shù)目、項(xiàng)值數(shù)目,以及***一次修改時(shí)間
Python操作注冊(cè)表步驟之4.設(shè)置項(xiàng)值
要修改或者重新設(shè)置注冊(cè)表某一項(xiàng)的項(xiàng)值可以使用RegSetValueEx函數(shù),如果要設(shè)置項(xiàng)的默認(rèn)值可以使用RegSetValue函數(shù)。需要說(shuō)明的是,對(duì)于RegSetValueEx,如果要設(shè)置的項(xiàng)值不存在,那么RegSetValueEx會(huì)添加該項(xiàng)值,如果存在,則修改該項(xiàng)值。其函數(shù)原型分別如下所示。
RegSetValueEx(key, valueName, reserved, type, value)RegSetValue
(key, subKey, type, value)
對(duì)于RegSetValueEx,其參數(shù)含義如下。
key:要設(shè)置的項(xiàng)的句柄。
valueName:要設(shè)置的項(xiàng)值名稱。
reserved:保留,可以設(shè)為0。
type:項(xiàng)值的類(lèi)型。
value:所要設(shè)置的值。
對(duì)于RegSetValue,其參數(shù)的含義如下。
key:已經(jīng)打開(kāi)的項(xiàng)的句柄。
subKey:所要設(shè)置的子項(xiàng)。
type:項(xiàng)值的類(lèi)型,必須為win32con.REG_SZ。
value:項(xiàng)值數(shù)據(jù),為字符串。
以下的實(shí)例實(shí)現(xiàn)修改“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer”的默認(rèn)值,以及其“Version”項(xiàng)值數(shù)據(jù)。
# 將“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer”的默認(rèn)值設(shè)為python>>> win32api.RegSetValue(key,'',win32con.REG_SZ,'python')# 將其“Version”設(shè)置為7.0.2900.2180>>> win32api.RegSetValueEx(key,'Version',0,win32con.REG_SZ,'7.0.2900.2180')
Python操作注冊(cè)表步驟之5.添加、刪除項(xiàng)
要向注冊(cè)表中添加項(xiàng)可以使用RegCreateKey函數(shù)。RegDeleteKey函數(shù)可以刪除注冊(cè)表中的項(xiàng)。其參數(shù)原型分別如下所示。
RegCreateKey(key, subKey )RegDeleteKey (key, subKey )
其參數(shù)含義相同,參數(shù)含義分別如下。
key:已經(jīng)打開(kāi)的注冊(cè)表項(xiàng)的句柄。
subKey:所要操作(添加或刪除)的子項(xiàng)。
以下的實(shí)例實(shí)現(xiàn)對(duì)“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer”項(xiàng)的添加、刪除子項(xiàng)操作。
# 向“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet
Explorer”添加子項(xiàng)“Python”>>> win32api.RegCreateKey(key,'Python')
# 新創(chuàng)建的子項(xiàng)的句柄# 刪除剛才創(chuàng)建的子項(xiàng)“Python”
>>> win32api.RegDeleteKey(key,'Python')
以上就是Python中怎么操作注冊(cè)表,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。