如何在Visual Studio安装程序项目中安装后启动应用程序

22

我使用Visual Studio 2008创建了一个安装程序项目。 在应用程序安装完成后,我希望它可以立即启动。你有什么想法如何做到这一点吗?

3个回答

26
我使用了一个脚本,在MSI的最后一个表单上放置了一个复选框“启动[ProductName]”。不过我不能为这个脚本做任何功劳。你可以在Aaron Stebner的博客上找到这个脚本,链接在 MSDN 上:http://blogs.msdn.com/astebner/archive/2006/08/12/696833.aspx CodeProject 上有一篇有趣的文章,还有一些很好的答案(这就是我找到 Aaron 的文章的地方)。 http://www.codeproject.com/KB/install/Installation.aspx 最后,在 StackOverflow 上也有一些类似的问题。 如何在安装程序项目结束时运行可执行文件? 如何在 C# 安装程序项目中完成设置后自动启动我的应用程序?

+1 给 Aaron Stebner 的脚本。它在我的 VS2010 安装程序项目中起作用。 - Ben H
Aaron Stebner的脚本适用于VS2017安装程序项目。 - Sasha
有人有这个脚本并愿意重新发布吗?看起来链接目前已经失效了? - TChadwick

13

我在 VS 2005 中使用了自定义操作。不确定在 VS 2008 中是否进行了改进。


8
以下是如何使您的应用程序在安装后启动的步骤(使用VS2010):
假设您已经有了两个项目:MyApp.ApplicationMyApp.Installer
  1. Right-click the project for MyApp.Application and choose Add > New Item... > Installer Class (name it whatever you want)
  2. Right-click the new Installer class & choose View Code
  3. Override the Commit method like this:

    public override void Commit(IDictionary savedState)
    {
        base.Commit(savedState);
    
        Directory.SetCurrentDirectory(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location));
        Process.Start(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\MyApp.exe");
    }
    
  4. Update MyApp.exe to use the name of your application

  5. Right-click your MyApp.Installer project & choose View > Custom Actions
  6. Right-click the Commit folder & choose Add custom action
  7. Choose Application Folder > OK > OK

参考资料:


这会导致我的安装程序在安装时挂起,有没有解决方法? - Jack_b_321

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接