Dans le forum "Comment faire démarrer automatiquement mon application avec Windows ?"
M. jmfmarques avait conçu la solution et disait qu'il attendait que cela soit publié car la publication ne relevait pas de sa volonté ni de ses pouvoirs.
jmfmarques a écrit :
Citation:
Pour ce faire, j'ai une question d'éclaircissement :Voici pour un "RunOnce"
(démarrage 1 seule fois)
Je te laisse deviner par quoi il faut remplacer Runonce pour démarrer à tous coups ...
Dans ta form d'appel :
Code :
Code :
Dans un module .bas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub machin_Click() fic$ = CurDir & "\util.exe" ' pour écrire une sous-clé (ici runonce) dans le registre SaveString HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce", "WinTray", fic$ End Sub
Code :
Code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Public Const REG_FULL_RESOURCE_DESCRIPTOR = 9 Public Const REG_RESOURCE_REQUIREMENTS_LIST = 10 Public Const REG_QWORD = 11 'les constantes de clés principales Public Const HKEY_CLASSES_ROOT = &H80000000 Public Const HKEY_CURRENT_USER = &H80000001 Public Const HKEY_LOCAL_MACHINE = &H80000002 Public Const HKEY_USERS = &H80000003 Public Const HKEY_PERFORMANCE_DATA = &H80000004 Public Const HKEY_CURRENT_CONFIG = &H80000005 Public Const HKEY_DYN_DATA = &H80000006 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 Long
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Public Sub SaveString(hKey As Long, strPath As String, strValue As String, strData As String) Dim ret RegCreateKey hKey, strPath, ret 'on crée une nouvelle clé RegSetValueEx ret, strValue, 0, REG_SZ, ByVal strData, Len(strData) 'on lui attribue une valeur RegCloseKey ret 'et on la ferme End Sub
Mon formulaire que je veux qu'il démarre avec Windows est "frmDemarrage".
Pour la procédure :
Code :
Où doit-je la mettre dans mon cas?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub machin_Click() fic$ = CurDir & "\util.exe" ' pour écrire une sous-clé (ici runonce) dans le registre SaveString HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce", "WinTray", fic$ End Sub
Et de plus, je ne comprends pas comment un tel code dans mon application peut démarrer avec windows car il n'y a aucun lien vers mon application. A moins que je dois mettre mon EXE quelque part, bref, je ne comprends pas le fonctionnement global du processus.
CurDir : fait référence à quel répertoire ? sachant que util.exe est le nom de mon Fichier exécutable.
J'ai besoin qu'après l'installation de mon application, chaque fois que Windows démarre, mon application se lance.
Merci de considérer la discussion.
Amitiés
Partager