home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 5_2007-2008.ISO / data / Zips / Unique_Too20380012162006.psc / PlanetSourceCodeSearch_vb / Application_StartWithWindows.bas next >
BASIC Source File  |  2006-11-30  |  2KB  |  43 lines

  1. Attribute VB_Name = "modStartWithWindows"
  2. 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
  3. 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, ByVal lpData As String, ByVal cbData As Long) As Long
  4. Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
  5. Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
  6.  
  7. Private Const HKEY_LOCAL_MACHINE = &H80000002
  8. Private Const HKEY_CURRENT_USER = &H80000001
  9. Private Const REG_SZ = 1
  10. Private Const KEY_WRITE = 131078
  11. Enum PickUser
  12.   AllUsers = HKEY_LOCAL_MACHINE
  13.   CurrentUser = HKEY_CURRENT_USER
  14. End Enum
  15.  
  16. Public Sub StartWithWindows(AppTitle As String, AppPath As String, LoadOnStart As Boolean, CurrentOrAllUsers As PickUser)
  17. Dim hKey As Long
  18.  
  19. AppPath = AppPath & "\" & App.EXEName & ".exe"
  20.  
  21. If LoadOnStart = True Then
  22.  'Load on Start
  23.  RegOpenKeyEx CurrentOrAllUsers, "Software\Microsoft\Windows\CurrentVersion\Run-", 0, KEY_WRITE, hKey
  24.  RegDeleteValue hKey, AppTitle
  25.  RegCloseKey hKey
  26.  RegOpenKeyEx CurrentOrAllUsers, "Software\Microsoft\Windows\CurrentVersion\Run", 0, KEY_WRITE, hKey
  27.  RegSetValueEx hKey, AppTitle, 0, REG_SZ, AppPath, Len(AppPath)
  28.  RegCloseKey hKey
  29. Else
  30.  
  31. 'Do NOT Load on Start
  32.  RegOpenKeyEx CurrentOrAllUsers, "Software\Microsoft\Windows\CurrentVersion\Run", 0, KEY_WRITE, hKey
  33.  RegDeleteValue hKey, AppTitle
  34.  RegCloseKey hKey
  35.  RegOpenKeyEx CurrentOrAllUsers, "Software\Microsoft\Windows\CurrentVersion\Run-", 0, KEY_WRITE, hKey
  36.  RegSetValueEx hKey, AppTitle, 0, REG_SZ, AppPath, Len(AppPath)
  37.  RegCloseKey hKey
  38. End If
  39.  
  40. End Sub
  41.  
  42.  
  43.