lancer un exe au demarrage

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

lancer un exe au demarrage

Message par Parole De JOJO »

comment faire pour ke mon programme se lance automatikement au demarage de l'ordi?
j'ai vu une fois une commande pour ca et je la trouve plus
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: lancer un exe au demarrage

Message par Ar-S »

Le plus simple est d'ajouter une clé au registre :

Pour ça voir ici et la clé pour le démarrage auto est :

Code : Tout sélectionner

"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run"
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: lancer un exe au demarrage

Message par Parole De JOJO »

ouaiiiiiiiiiis
jai pas tout a fait piger lequel de ces codes je dois prendre, et comment y combiner la formule magik
si c'est pas trop complike tu pourrais peut etre me donner un petit exemple?
merci
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: lancer un exe au demarrage

Message par Ar-S »

Y'a la procédure complète dans le lien que je t'ai donné et Dobro a mis un exemple pour chaque, faut lire un peu hein.

Pour écrire :

Code : Tout sélectionner

; ecrire une chaine dans le registre
Procedure.l WriteRegKey(OpenKey.l,SubKey.s,keyset.s,KeyValue.s) ; ------------------------ WRITE KEY
        
         ; result.l=WriteRegKey(#HKEY_LOCAL_MACHINE,"SOFTWARE\Test Program Name","Test","TestValue")
        
        hKey.l=0
         If RegCreateKey_ (OpenKey,SubKey,@hKey)=0
                Result=1
                DataSize.l= len (KeyValue)
                 If RegSetValueEx_ (hKey,keyset,0, #REG_SZ ,@KeyValue,DataSize)=0
                        Result=2
                 EndIf
                 RegCloseKey_ (hKey)
         EndIf
         ProcedureReturn Result
         ;returns 0 if error / could not open or create SubKey
         ;returns 1 if error / could not write new value
         ;returns 2 if Success!!
        
EndProcedure 
Donc pour ton affaire, je t'ai donné la clé

Code : Tout sélectionner

"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run"
Donc la commande WriteRegKey prendra cette forme :

Code : Tout sélectionner

; result.l=WriteRegKey(#HKEY_CURRENT_USER,"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run","Nom_de_ton_logiciel","chemin_complet_de_ton_exe")
Je te laisse regarder la procédure complète au lien adéquate car si tu inscrits un truc dans le registre, il faudra bien un bouton ou un désinstalleur inclus qui "supprimera cette clé" selon le choix de l'utilisateur.

Dernière chose, gaffe au registre, ne te plate pas voir, fais en une sauvegarde avant de tatouiller dedans.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: lancer un exe au demarrage

Message par Parole De JOJO »

merci

si jai bien compris je dois faire ca

Code : Tout sélectionner

Procedure.l WriteRegKey(OpenKey.l,SubKey.s,keyset.s,KeyValue.s) ; ------------------------ WRITE KEY
       
result.l=WriteRegKey(#HKEY_CURRENT_USER,"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run","logiciel.exe","C:/Mes Exes/")       
        hKey.l=0
         If RegCreateKey_ (OpenKey,SubKey,@hKey)=0
                Result=1
                DataSize.l= Len (KeyValue)
                 If RegSetValueEx_ (hKey,keyset,0, #REG_SZ ,@KeyValue,DataSize)=0
                        Result=2
                 EndIf
                 RegCloseKey_ (hKey)
         EndIf
         ProcedureReturn Result
         ;returns 0 if error / could not open or create SubKey
         ;returns 1 if error / could not write new value
         ;returns 2 if Success!!
       
EndProcedure 

WriteRegKey()
mais que mettre dans les parentheses, ca jai pas capte

merci encore
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Re: lancer un exe au demarrage

Message par Le Soldat Inconnu »

Et bien, en l'écrivant comme ceci, c'est mieux, j'ai juste changer l'ordre

Code : Tout sélectionner

Procedure.l WriteRegKey(OpenKey.l,SubKey.s,keyset.s,KeyValue.s) ; ------------------------ WRITE KEY 
     
    hKey.l=0 
    If RegCreateKey_ (OpenKey,SubKey,@hKey)=0 
    Result=1 
    DataSize.l= Len (KeyValue) 
    If RegSetValueEx_ (hKey,keyset,0, #REG_SZ ,@KeyValue,DataSize)=0 
    Result=2 
    EndIf 
    RegCloseKey_ (hKey) 
    EndIf 
    ProcedureReturn Result 
    ;returns 0 if error / could not open or create SubKey 
    ;returns 1 if error / could not write new value 
    ;returns 2 if Success!! 
     
EndProcedure  

result.l=WriteRegKey(#HKEY_CURRENT_USER,"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run","logiciel.exe","C:/Mes Exes/")    
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Re: lancer un exe au demarrage

Message par nico »

Je ne comprend pas, en lançant l'exemple j'ai 2 comme résultat mais rien ne s'ajoute dans la base de registre.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: lancer un exe au demarrage

Message par Backup »

.............................
Dernière modification par Backup le sam. 19/mars/2011 17:36, modifié 1 fois.
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: lancer un exe au demarrage

Message par Parole De JOJO »

je dois etre un imbecile mais ca ne me marche pas

Code : Tout sélectionner

Procedure   StartWithWindows(state.b)
         Protected key.l = #HKEY_CURRENT_USER ;or #HKEY_LOCAL_MACHINE pour tout les utilisateur de l'ordi
         Protected Path.s = "Software\Microsoft\Windows\CurrentVersion\Run" ;ou RunOnce pour le lancer qu'une fois
         Protected Value.s = "monprog.exe" ;mettre ici le nom de votre prg
         Protected String.s = Chr (34)+"C:\Mes Exes\monprog.exe"+ Chr (34) ;ici le chemin de votre prg
         Protected CurKey.l
         If state =1 ; creer la clef
                 RegCreateKey_ (key,@Path,@CurKey)
                 RegSetValueEx_ (CurKey,@Value,0, #REG_SZ ,@String, Len (String))
         Else ; efface la clef
                 RegOpenKey_ (key,@Path,@CurKey)
                 RegDeleteValue_ (CurKey,@Value)
         EndIf
         RegCloseKey_ (CurKey)
EndProcedure 
StartWithWindows(1)
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: lancer un exe au demarrage

Message par Ar-S »

Parole De JOJO a écrit :je dois etre un imbecile mais ca ne me marche pas

Code : Tout sélectionner

Procedure   StartWithWindows(state.b)
         Protected key.l = #HKEY_CURRENT_USER ;or #HKEY_LOCAL_MACHINE pour tout les utilisateur de l'ordi
         Protected Path.s = "Software\Microsoft\Windows\CurrentVersion\Run" ;ou RunOnce pour le lancer qu'une fois
         Protected Value.s = "monprog.exe" ;mettre ici le nom de votre prg
         Protected String.s = Chr (34)+"C:\Mes Exes\"+ Chr (34) ;ici le chemin de votre prg
         Protected CurKey.l
         If state =1 ; creer la clef
                 RegCreateKey_ (key,@Path,@CurKey)
                 RegSetValueEx_ (CurKey,@Value,0, #REG_SZ ,@String, Len (String))
         Else ; efface la clef
                 RegOpenKey_ (key,@Path,@CurKey)
                 RegDeleteValue_ (CurKey,@Value)
         EndIf
         RegCloseKey_ (CurKey)
EndProcedure 
StartWithWindows(1)
Les chr(34) de la partie Protected String.s = ne sont utiles que si l'exe à besoin d'une commande spéciale après son nom (genre "c:\monprog.exe" \hide sinon elles ne sont pas nécessaire.

Sinon JOJO, ce code marche. Ouvre Regedit et vas à la clé concernée, ensuite lance la procédure puis sous regedit fait F5 pour rafraichir la liste, la nouvelle clé a du s'ajouter. Ensuite relance ton programme avec StartWithWindows(0)
La clé sera supprimée.
Dernière modification par Ar-S le mer. 22/sept./2010 16:43, modifié 1 fois.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: lancer un exe au demarrage

Message par Backup »

....................
Dernière modification par Backup le sam. 19/mars/2011 17:36, modifié 1 fois.
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: lancer un exe au demarrage

Message par Parole De JOJO »

Code : Tout sélectionner

Procedure   StartWithWindows(state.b)
         Protected key.l = #HKEY_CURRENT_USER ;or #HKEY_LOCAL_MACHINE pour tout les utilisateur de l'ordi
         Protected Path.s = "Software\Microsoft\Windows\CurrentVersion\Run" ;ou RunOnce pour le lancer qu'une fois
         Protected Value.s = "monprog.exe" ;mettre ici le nom de votre prg
Protected String.s = "C:\Mes Exes\"
         Protected CurKey.l
         If state =1 ; creer la clef
                 RegCreateKey_ (key,@Path,@CurKey)
                 RegSetValueEx_ (CurKey,@Value,0, #REG_SZ ,@String, Len (String))
         Else ; efface la clef
                 RegOpenKey_ (key,@Path,@CurKey)
                 RegDeleteValue_ (CurKey,@Value)
         EndIf
         RegCloseKey_ (CurKey)
EndProcedure 
StartWithWindows(1)
desole mais ca ne marche pas
je suis alle a regedit, rien n'a change
tu as essaye?
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: lancer un exe au demarrage

Message par Backup »

.......................
Dernière modification par Backup le sam. 19/mars/2011 17:37, modifié 1 fois.
Parole De JOJO
Messages : 446
Inscription : mar. 25/mai/2010 17:24
Localisation : Bnei Brak, Israel

Re: lancer un exe au demarrage

Message par Parole De JOJO »

je sais pas cest koi ton GmailEnhancer et pourkoi il finit pas par .exe
moi j'ai utilise ce code, lettre par lettre, et ca n'a rien du tout bouge sur le regedit

Code : Tout sélectionner

Procedure   StartWithWindows(state.b)
         Protected key.l = #HKEY_CURRENT_USER ;or #HKEY_LOCAL_MACHINE pour tout les utilisateur de l'ordi
         Protected Path.s = "Software\Microsoft\Windows\CurrentVersion\Run" ;ou RunOnce pour le lancer qu'une fois
         Protected Value.s = "monprog.exe" ;mettre ici le nom de votre prg
Protected String.s = "C:\Mes Exes\"
         Protected CurKey.l
         If state =1 ; creer la clef
                 RegCreateKey_ (key,@Path,@CurKey)
                 RegSetValueEx_ (CurKey,@Value,0, #REG_SZ ,@String, Len (String))
         Else ; efface la clef
                 RegOpenKey_ (key,@Path,@CurKey)
                 RegDeleteValue_ (CurKey,@Value)
         EndIf
         RegCloseKey_ (CurKey)
EndProcedure
StartWithWindows(1)
essaye de le copier et le runner et dis moi si ca marche chez twa

merci
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: lancer un exe au demarrage

Message par Backup »

.................
Dernière modification par Backup le sam. 19/mars/2011 17:37, modifié 1 fois.
Répondre