我知道的有三种方法: 1.将程序加在"启动"组中。 2.将程序加在win.ini的run中 3.将程序加在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 中。例如: Private Const REG_SZ = 1 Private Const HKEY_LOCAL_MACHINE = &H80000002 '声明API函数 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 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 RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Function AutoRun(AutoName As String, filename As String) Dim hKey As Long RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\windows\CurrentVersion\Run", hKey RegSetValueEx hKey, AutoName, 0, REG_SZ, ByVal filename, Len(filename) RegCloseKey hKey End Function autoname为你起的名字,filename可以这样得到: filename = App.path If Right(filename, 1) <> "\" Then filename = filename + "\" filename = Chr(34) + filename + [你的程序名]+ Chr(34)
我知道的有三种方法: 1.将程序加在"启动"组中。 2.将程序加在win.ini的run中 3.将程序加在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 中。例如: Private Const REG_SZ = 1 Private Const HKEY_LOCAL_MACHINE = &H80000002 '声明API函数 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 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 RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Function AutoRun(AutoName As String, filename As String) Dim hKey As Long RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\windows\CurrentVersion\Run", hKey RegSetValueEx hKey, AutoName, 0, REG_SZ, ByVal filename, Len(filename) RegCloseKey hKey End Function autoname为你起的名字,filename可以这样得到: filename = App.path If Right(filename, 1) <> "\" Then filename = filename + "\" filename = Chr(34) + filename + [你的程序名]+ Chr(34)
有时需要让windows在启动时自动运行你的程序,如何在程序中实现呢? 使用regedit查找hkey_localmachine\sodtware\microsoft\windows\currentversion\run,你会发现所有的windows启动时调用的程序都在这里,于是你将你的程序增加在这里就可以了.名称为你的程序的标题,其值为你的程序的执行路径和文件名称. 如interbase:
interbase server"d:\program files\borland\intrbase\bin\ibserver.exe"
在程序中实现可以使用treginifile或者使用tregistry都可以. user registry; var
regf:tregistry;
begin
regf:=tregistry.create;
regf.rootkey:=hkey_local_machine;
try
regf.openkey('software\microsoft\windows\currentversion\run',true);
regf.writestring('interbase server',
'"d:\program files\borland\intrbase\bin\ibserver.exe"');
except
...
end;
regf.close;
regf.free;
end;
1.将程序加在"启动"组中。
2.将程序加在win.ini的run中
3.将程序加在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
中。例如:
Private Const REG_SZ = 1
Private Const HKEY_LOCAL_MACHINE = &H80000002
'声明API函数
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 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 RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Function AutoRun(AutoName As String, filename As String)
Dim hKey As Long
RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\windows\CurrentVersion\Run", hKey
RegSetValueEx hKey, AutoName, 0, REG_SZ, ByVal filename, Len(filename)
RegCloseKey hKey
End Function autoname为你起的名字,filename可以这样得到:
filename = App.path
If Right(filename, 1) <> "\" Then filename = filename + "\"
filename = Chr(34) + filename + [你的程序名]+ Chr(34)
1.将程序加在"启动"组中。
2.将程序加在win.ini的run中
3.将程序加在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
中。例如:
Private Const REG_SZ = 1
Private Const HKEY_LOCAL_MACHINE = &H80000002
'声明API函数
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 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 RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Function AutoRun(AutoName As String, filename As String)
Dim hKey As Long
RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\windows\CurrentVersion\Run", hKey
RegSetValueEx hKey, AutoName, 0, REG_SZ, ByVal filename, Len(filename)
RegCloseKey hKey
End Function autoname为你起的名字,filename可以这样得到:
filename = App.path
If Right(filename, 1) <> "\" Then filename = filename + "\"
filename = Chr(34) + filename + [你的程序名]+ Chr(34)
安装程序用installshield,有点像C语言,你要怎么写都可以。