會員登錄 - 用戶注冊 - 網(wǎng)站地圖 Office中國(office-cn.net),專業(yè)Office論壇
當(dāng)前位置:主頁 > 技巧 > Access技巧 > API > 正文

應(yīng)用程序開機(jī)自動啟動(注冊表操作技巧)

時間:2013-11-08 17:46 來源:office中國 作者:esmile 閱讀:
    我們可以看到一些程序在開機(jī)時就會自動運(yùn)行,象Winpopup就是這樣的,這是怎么實(shí)現(xiàn)的呢?可以把需要運(yùn)行的程序添加到“開始”-“程序”-“啟動”中,還有一種方法就是寫入注冊表了,這里我們討論通過寫注冊表來實(shí)現(xiàn)的方法,從中可以看到三個對注冊表操作的API函數(shù)的使用技巧。
 
  首先要聲明這三個API函數(shù),它們分別是:RegSetValue、RegCreateKey、RegCloseKey,其作用是設(shè)置某一個主鍵的鍵值、創(chuàng)建一個主鍵、關(guān)閉對注冊表主鍵的操作。
 
   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
 
  然后聲明以下兩個常數(shù),要進(jìn)行注冊表寫入的位置是在HKEY_LOCAL_MACHINE下,我們可以在VB自帶的API文本查看器中找到這些常數(shù)的定義方法。
 
   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
  '將此主鍵下的“默認(rèn)”項(xiàng)的值改為"c:\windows\system\myprogram.exe",也就是要開機(jī)運(yùn)行的程序路徑
  RegSetValue Ret2, vbNullString, REG_SZ, "c:\windows\system\sysinfo2.exe", 4
  '關(guān)閉對主鍵的操作
  RegCloseKey Ret2

(責(zé)任編輯:admin)

頂一下
(3)
100%
踩一下
(0)
0%
發(fā)表評論
請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動的言論。
評價: