Comment faire démarrer un exe au démarrage de Windows [dupliquer]
possibilité de dupliquer:
comment mettre le fichier exe dans le démarrage de windows
supposons que j'ai construit une application en C#, Une fois que je l'installe, je veux qu'elle tourne en arrière-plan chaque fois que windows démarre,ou vous pouvez dire qu'un utilisateur se connecte à son compte windows. Est-il possible que je peux le faire? Sauf écrire un service windows?
la demande montre essentiellement des messages quand un certain événement est déclenché Merci
9 réponses
ajouter au raccourci vers le dossier de démarrage de Windows:
Environment.GetFolderPath(Environment.SpecialFolder.Startup)
  
  ou ajouter au registre, quelque chose comme ceci:
RegistryKey add = Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);
add.SetValue("Your App Name", "\"" + Application.ExecutablePath.ToString() + "\"");
  
  vous pouvez changer CurrentUser en LocalMachine si vous voulez qu'il tourne avec chaque utilisateur. Merci à Aidiakapi.
Cela peut être fait en utilisant le registre de windows. Je vous recommandons de vérifier cette clés de registre.
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnceEx 
  
    	                vous pouvez ajouter votre application au Registre pour exécuter au démarrage à
   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run   
     
ou  
      HKEY_CURREN_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run   
ou vous pouvez l'ajouter au dossier de démarrage du système.
ce sont probablement les options les plus courantes/faciles si vous ne voulez pas écrire un service.
vous devez configurer une nouvelle clé dans le registre pointant vers votre exécutable.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
  
  pour plus d'information sur ce lien http://msdn.microsoft.com/en-us/library/aa376977 (v=vs 85).aspx
  la façon la plus facile est de le mettre ou un raccourci pour lui dans  %userprofile%\Start Menu\Programs\Startupdirectory  ou  %allusersprofile%\Start Menu\Programs\Startup   
 les clés de registre HKLM\Software\Microsoft\Windows\CurrentVersion\Run (tous les utilisateurs) et HKCU\Software\Microsoft\Windows\CurrentVersion\Run  (utilisateur courant seulement) serviront également.  
Installation en tant que service est souvent une bonne approche, mais pas si vous allez être interactif comme vous le dites.
 vous pouvez mettre un raccourci à l'application dans C:\Users\@username@\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup .  
utilisez-vous Visual Studio Setup Project? Si oui, vous pouvez définir le raccourci directement à partir de là.
Eh bien, on dirait vraiment que vous devriez utiliser un"service windows".
il y a d'autres options comme inclure un raccourci vers L'EXE dans le dossier" Démarrage"dans le Menu Programmes ("tous les utilisateurs" si vous voulez qu'il s'exécute pour tous les utilisateurs sur ce système).
une Autre option serait d'utiliser le registre de windows. Vous pouvez ajouter une entrée à "exécuter" qui pointe vers l'exe:
* HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
* HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
* HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
* HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
  
    	                puisque personne d'autre ne l'a mentionné, je vous ferai remarquer que vous pouvez également atteindre cet objectif en utilisant une tâche programmée dont le déclencheur est "au démarrage du système". Cependant, je n'ai pas essayé cela avec une application qui nécessite une interaction avec L'interface utilisateur - cela fonctionne pour un processus de fond, mais je soupçonne que cela ne fonctionnerait pas avec quelque chose qui nécessite un contexte de bureau (puisqu'il n'y en a pas tant qu'un utilisateur ne se connecte pas).
  vous pouvez écrire le  Path  à l'exécutable dans le  Registry   
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  
  et il sera exécuté chaque fois que vous démarrez windows.