我们可以看到一些程序在开机时就会自动运行象Winpopup就是这样的这是怎么实现的呢?可以把需要运行的程序添加到开始程序启动中还有一种方法就是写入注册表了这里我们讨论通过写注册表来实现的方法从中可以看到三个对注册表操作的API函数的使用技巧 首先要声明这三个API函数它们分别是RegSetValueRegCreateKeyRegCloseKey其作用是设置某一个主键的键值创建一个主键关闭对注册表主键的操作 Private Declare Function RegSetValue Lib advapidll 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 advapidll Alias RegCreateKeyA (ByVal hKey As Long ByVal lpSubKey As String phkResult As Long) As Long Private Declare Function RegCloseKey Lib advapidll (ByVal hKey As Long) As Long 然后声明以下两个常数要进行注册表写入的位置是在HKEY_LOCAL_MACHINE下我们可以在VB自带的API文本查看器中找到这些常数的定义方法 Private Const HKEY_LOCAL_MACHINE = &H Private Const REG_SZ = 然后使用如下语句就行了你可以把这段代码放在程序的某个位置 @#写注册表 Dim Ret As Long @#打开 HKEY_LOCAL_MACHINE下的software\microsoft\windows\currentVersion\runServices主键 RegCreateKey HKEY_LOCAL_MACHINE software\microsoft\windows\currentVersion\runServices Ret @#将此主键下的默认项的值改为c:\windows\system\myprogramexe也就是要开机运行的程序路径 RegSetValue Ret vbNullString REG_SZ c:\windows\system\sysinfoexe @#关闭对主键的操作 RegCloseKey Ret |