Search code examples
.netclickoncestartup

How can I make a Click-once deployed app run at startup?


How can I make a Click-once deployed app run a startup?

The best option I found by searching was to set the Publisher on the app to Startup, so the Start menu shortcut would be placed in the Startup folder, but that seems like a huge hack and I would like there to be a Start menu icon people can find.

What options do I have?


Solution

  • I feel that adding your application to the startup folder is unprofessional. I strongly recommend using a startup registry key to launch your application.

    Contrary to what a lot of the material on this topic says, it is extremely simple to setup a key to launch a click once application and does not require setting up additional shortcuts. You simply use the shortcut created on install:

    // The path to the key where Windows looks for startup applications
    RegistryKey rkApp = Registry.CurrentUser.OpenSubKey(
                        @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);
    
    //Path to launch shortcut
    string startPath = Environment.GetFolderPath(Environment.SpecialFolder.Programs) 
                       + @"\YourPublisher\YourSuite\YourProduct.appref-ms";
    
    rkApp.SetValue("YourProduct", startPath);