Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey 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 Long Private Const HKEY_CURRENT_USER = &H80000001 Private Const KEY_WRITE = &H20006 Private Const REG_SZ = 1 Private Const HKEY_LOCAL_MACHINE = &H80000002 Private Sub Form_Load() Dim hregkey As Long Dim subkey As String Dim stringbuffer As String * 256 subkey = "Software\Microsoft\Windows\CurrentVersion\Run" retval = RegOpenKeyEx(HKEY_LOCAL_MACHINE, subkey, 0, KEY_WRITE, hregkey) If retval <> 0 Then Debug.Print "Can't open the subkey" Exit Sub End If stringbuffer = App.Path & "\" & App.EXEName & ".exe" retval = RegSetValueEx(hregkey, "自动运行", 0, REG_SZ, ByVal stringbuffer, Len(stringbuffer)) RegCloseKey hregkey End Sub
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey 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 Long
Private Const HKEY_CURRENT_USER = &H80000001
Private Const KEY_WRITE = &H20006
Private Const REG_SZ = 1
Private Const HKEY_LOCAL_MACHINE = &H80000002
Private Sub Form_Load()
Dim hregkey As Long
Dim subkey As String
Dim stringbuffer As String * 256
subkey = "Software\Microsoft\Windows\CurrentVersion\Run"
retval = RegOpenKeyEx(HKEY_LOCAL_MACHINE, subkey, 0, KEY_WRITE, hregkey)
If retval <> 0 Then
Debug.Print "Can't open the subkey"
Exit Sub
End If
stringbuffer = App.Path & "\" & App.EXEName & ".exe"
retval = RegSetValueEx(hregkey, "自动运行", 0, REG_SZ, ByVal stringbuffer, Len(stringbuffer))
RegCloseKey hregkey
End Sub
http://www.sijiqing.com/vbgood/code/index.asp?action=read&id=1220
NTservice控件做的服务
http://www.sijiqing.com/vbgood/code/index.asp?action=read&id=1225
它能添加到服务管理器中,就是不能起动。
不知道为什么?请指点谢谢
我用API函数CREATESERVICE能创建WINDOWS服务
但是就是启动不了。
主要是用REGSTERSERVICECTRLHANDLS不能注册呀?
请高手指点咯?