Accueil > WPF > Lancer son application au démarrage de Windows sans bidouiller avec la base de registre

Lancer son application au démarrage de Windows sans bidouiller avec la base de registre

Dans ce billet je vais vous présenter deux méthodes permettant de configurer son application .Net pour qu’elle soit lancée au démarrage de Windows. Ces deux méthodes nous évitent de toucher à la base de registre et ainsi nous n’allons pas oublier de nettoyer cette base s’il arrivait que l’utilisateur désinstalle notre application.

La première méthode :
Dans le projet d’installation (projet de déploiement avec Windows Installer) suivre les étapes suivantes :

  1. Dans le File System (Système de fichiers) du projet on ajoute un dossier spécial appelé User’s Startup
  2. Folder (Dossier de démarrage de l’utilisateur)
  3. On crée un raccourci de la sortie de projet qui se trouve dans le dossier Application Folder (Dossier de l’application).
  4. On renomme ce raccourci pour lui donner un nom plus explicite.
  5. On coupe (CRTL+X) le raccourci qu’on vient de créer et on le colle (CRTL+V) dans le dossier User’s Startup Folder

Deuxième méthode :
Cette solution consiste à rendre configurable le démarrage automatique à partir du code de l’application. Pour cela j’ai créé deux fonctions : une pour l’activation et l’autre pour la désactivation.
N.B. : Pour que le code fonctionne, il faudra ajouter la référence à l’assembly COM Windows Script Host Object Model dans votre projet.
La fonction d’activation est la suivante :

// Cette méthode vérifie l'existence du raccourci
// Si le raccourci est déjà présent alors on ne fait rien
public void EnbaleApplicationStartup()
{
	string shortcutPath = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Startup), "MonRaccourci.lnk");
	if (System.IO.File.Exists(shortcutPath)) return;
 
	WshShell wshShell = new WshShellClass();
 
	IWshShortcut shortcut = (IWshShortcut)wshShell.CreateShortcut(shortcutPath);
 
	shortcut.TargetPath = Assembly.GetEntryAssembly().Location;
 
	shortcut.Description = "Mon premier raccourci";
 
	shortcut.Save();
}

La fonction de désactivation :

public void DisableApplicationStartup()
{
	string shortcutPath = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Startup), "MonRaccourci.lnk");
	if (!System.IO.File.Exists(shortcutPath)) return;
 
	System.IO.File.Delete(shortcutPath);
}
Publicités
Catégories :WPF Étiquettes :
  1. Aucun commentaire pour l’instant.
  1. No trackbacks yet.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :