|
-
Sep 1st, 2000, 04:24 PM
#1
Thread Starter
Lively Member
How do I get my app to load at startup?
-
Sep 1st, 2000, 04:27 PM
#2
Hyperactive Member
Put a shortcut to your exe in the startup folder. It can be found at:
c:\windows\start menu\start up
-
Sep 1st, 2000, 04:29 PM
#3
Thread Starter
Lively Member
startup
sorry i wasnt specific enough, I want the program
to copy itself to the startup menu.
-
Sep 1st, 2000, 04:31 PM
#4
Guru
The easiest way is to create a string value in the registry, in HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run.
The key's name doesn't matter (use App.Title), and the value should be:
Code:
App.Path & IIf(Right(App.Path, 1) = "\", vbNullString, "\") & App.EXEName & IIf(LCase(Right(App.EXEName, 4)) = ".exe", vbNullString, ".exe")
This is the easiest because the Startup folder may differ, but the registry location is always the same.
To set the value there, use the Registry API functions...
-
Sep 1st, 2000, 04:36 PM
#5
Monday Morning Lunatic
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 1st, 2000, 04:42 PM
#6
Thread Starter
Lively Member
-
Sep 1st, 2000, 07:42 PM
#7
Here is an example of Yonatan's idea:
Code:
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_LOCAL_MACHINE = &H80000002
Private Const ERROR_SUCCESS = 0&
Private Const REG_SZ = 1
Private Const KEY_SET_VALUE = &H2
Private Sub Command1_Click()
Call SetProgramStartup("MyProg", "C:\MyProg.exe")
End Sub
Public Function SetProgramStartup(pProgramName As String, pProgramPath As String) As Boolean
Dim lKeyHandle As Long
Dim lRet As Long
Dim strBuffer As String
Dim strKey As String
strKey = "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, strKey, 0, KEY_SET_VALUE, lKeyHandle)
If lRet = ERROR_SUCCESS Then
lRet = RegSetValueEx(lKeyHandle, pProgramName, 0, REG_SZ, ByVal pProgramPath, Len(pProgramPath))
RegCloseKey lKeyHandle
End If
End Function
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|