VB對登錄檔操作程式開機時執行

2021-04-12 13:54:51 字數 1346 閱讀 2659

我們可以看到一些程式在開機時就會自動執行,象winpopup就是這樣的,這是怎麼實現的呢?可以把需要執行的程式新增到「開始」-「程式」-「啟動」中,還有一種方法就是寫入登錄檔了,這裡我們討論通過寫登錄檔來實現的方法,從中可以看到三個對登錄檔操作的api函式的使用技巧。

首先要宣告這三個api函式,它們分別是:regsetvalue、regcreatekey、regclosekey,其作用是設定某乙個主鍵的鍵值、建立乙個主鍵、關閉對登錄檔主鍵的操作。

private declare function regsetvalue lib "advapi32.dll" alias "regsetvaluea" (byval hkey as long, byval lpsubkey as string, byval dwtype as long, byval lpdata as string, byval cbdata as long) as long

private declare function regcreatekey lib "advapi32.dll" alias "regcreatekeya" (byval hkey as long, byval lpsubkey as string, phkresult as long) as long

private declare function regclosekey lib "advapi32.dll" (byval hkey as long) as long

然後宣告以下兩個常數,要進行登錄檔寫入的位置是在hkey_local_machine下,我們可以在vb自帶的api文字檢視器中找到這些常數的定義方法。

private const hkey_local_machine = &h80000002

private const reg_sz = 1

然後使用如下語句就行了,你可以把這段**放在程式的某個位置:

'寫登錄檔

dim ret2 as long

'開啟 hkey_local_machine 下的 software/microsoft/windows/currentversion/runservices 主鍵

regcreatekey hkey_local_machine, "software/microsoft/windows/currentversion/runservices", ret2

'將此主鍵下的「預設」項的值改為"c:/windows/system/myprogram.exe",也就是要開機執行的程式路徑

regsetvalue ret2, vbnullstring, reg_sz, "c:/windows/system/sysinfo2.exe", 4

'關閉對主鍵的操作

regclosekey ret2 

Delphi 開機啟動 操作登錄檔

開機啟動註冊路徑 64位作業系統 hkey local machine software wow6432node microsoft windows currentversion run 32位作業系統 hkey local machine software microsoft windows cu...

利用登錄檔優化系統,減少開機時間

登錄檔是系統的核心資料庫,它包含了應用程式和計算機系統的全部配置資訊,初始化資訊,檔案關聯資訊以及硬體裝置資訊等重要資料。登錄檔直接控制了計算機系統的啟動,硬體裝置驅動的載入和應用程式的正常執行,故而可通過修改登錄檔表達到優化系統的目的。在實際的電腦使用過程中,很大一部分電腦使用者可能會覺得作業系統...

C 對登錄檔刪除操作

最近需要開發乙個小工具,用於清除登錄檔中的一些註冊資訊,這裡的技術點有以下幾點 1 查詢登錄檔指定項資訊 根據給定的登錄檔項名稱,查詢項的資訊,如包含子項的數量。2 迴圈查詢子項 由於登錄檔中的子項名稱不知道,只能根據指定的項下面,迴圈取得子項,然後匹配子項中的特定的鍵和鍵值,從而確定子項。3 查詢...