'将C;\test\test.exe注册为自动启动 Option Explicit Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal Hkey 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 RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal Hkey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As LongPrivate Const REG_SZ = 1 Private Const HKEY_LOCAL_MACHINE = &H80000002Private Sub Form_Load() Dim keyHand As Long, strName As String, strData As String strName = "startExe" strData = "C:\test\test.exe" Dim r As Long r = RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", keyHand) r = RegSetValueEx(keyHand, strName, 0, REG_SZ, ByVal strData, Len(strData)) r = RegCloseKey(keyHand) End Sub
或者把应用程序的快捷方式放到“启动”文件夹下
7
Startup.zip 4K 这个应用程序允许你选择一个 EXE 文件,并且加入到WINDOWS注册表,当WINDOWS启动时,会自动调用。 3643
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:关闭指定的主册表键,释放句柄。当对一个或多个键或值操作完成以后,需要关闭其键来进行保存操作结果。 2·RegCreateKeyEx()和RegCreateKey()
RegCreateKey()函数简单了不少,请自己看了。
返回值:不成功返回非0,成功返回ERROR_SUCCESS.
解释:打开指定的键或子键。如果要打开的键不存在的话,本函数会试图建立它。 3·RegOpenKey()和RegOpenKeyEx()
返回值:不成功返回非0,成功返回ERROR_SUCCESS.
解释:该函数负责打开指定的键或子键,如果不存在他不建立。其他和RegCreateKeyEx()和RegCreateKey()基本相同。 4·RegDeleteKey()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
该函数用来删除注册表中的一个键值的。 5·RegQueryValue()和RegQueryValueEx()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:读取某子键下特定名称的值。 6·RegSetValue()和RegSetValueEX()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:设置某子键下特定名称的值。 7·RegEnumValue()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:列出某Key的所有名称的值,变化索引即可遍历整个键下的名称和数据。 8·RegDeleteValue()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:删除某Key的某一名称 9·RegEnumKey()和RegEnumKeyEx()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
返回注册表键及其子键的详细信息。 10·RegQueryInfoKey()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:返回注册表键的信息,包括类名、子键数量、最长子键名、值的数量、最长值数据、安全描述符的长度以及上一次写入的时间等。 11·RegLoadKey()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:从指定的文件恢复注册表键的子键信息到注册表。 12·RegReplaceKey()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:从指定的文件恢复注册表键的子键信息到注册表并替换原有的值,并生成新的备份文件 13· RegSaveKey()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:保存键及其子键信息到指定的文件。 14· RegConnectRegistry()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:连接到远程系统的注册表。 15·RegNotifyChangeKeyValue()
当修改指定的注册表对象时提供通知。 16· RegUnloadKey()
返回值:不成功返回非0,成功返回ERROR_SUCCESS
删除注册表键及其所有的子键。
Option Explicit
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal Hkey 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 RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal Hkey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As LongPrivate Const REG_SZ = 1
Private Const HKEY_LOCAL_MACHINE = &H80000002Private Sub Form_Load()
Dim keyHand As Long, strName As String, strData As String
strName = "startExe"
strData = "C:\test\test.exe"
Dim r As Long
r = RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", keyHand)
r = RegSetValueEx(keyHand, strName, 0, REG_SZ, ByVal strData, Len(strData))
r = RegCloseKey(keyHand)
End Sub