代码之家  ›  专栏  ›  技术社区  ›  RodH257

使用wpf表单、打包文件和自定义安装操作创建安装程序

  •  1
  • RodH257  · 技术社区  · 16 年前

    我正在尝试创建一种向用户部署一组工具(它们是第三方软件的插件)的方法。

    我想做以下工作:

    • 用户输入序列号
    • 它们目录结构中的dll被提取到程序文件中
    • 将文件复制到ProgramData中的某个位置(这将向第三方应用程序注册我的外接程序)
    • 执行软件的联机激活

    有人能为我指出正确的方向吗?我看过visual studio中的部署项目,但不确定它们是否是我所追求的。主要问题是它们很难看,我想有一个很好的wpf安装程序,并有一个更自定义的经验。但我想如果这能让事情变得更容易的话,这是可以交换的。

    我在想,我可以自己制作一个c项目来提取文件,但我不知道如何打包它们,并将它们全部提取为一次下载的一部分(如部署项目创建的msi文件)。有人能指点我正确的方向吗?

    2 回复  |  直到 16 年前
        1
  •  2
  •   Josh    16 年前

    有一个wpf安装程序的问题是,您的用户需要安装一个适当版本的.net来 安装 你的申请。如果您使用的是.NET 3.0,并且您的软件需要Windows Vista或更高版本,则这可能很好。但是,如果您使用.net 3.5或4.0,仅仅将.net作为一项要求可能是不够的。如果用户卸载.NET然后尝试卸载您的应用程序,您会怎么做?

    这就是为什么通常认为在安装程序中使用.NET自定义操作也是一个坏主意。

    虽然mmr对wix的推荐是一个很好的推荐(我使用过它,它非常强大),但应该注意它有一个陡峭的学习曲线。或者至少在我最后一次使用它时是这样,因为几乎没有或根本没有成熟的工具支持它。你基本上都是手工制作的。

    如果你没有足够的开发人员资源来花很多时间在安装程序上,我建议你看一个商业的安装程序创作产品,它可能会让你很快地启动和运行。

    但是,您可能可以通过将序列号/激活片段移出安装程序并在第一次运行时在应用程序中执行此操作来节省大量时间。

        2
  •  0
  •   mmr    16 年前

    去 WiX .

    事实证明,编写自己的安装程序比看上去复杂得多,而且确保它在所有版本的windows中都能很好地运行,等等,并不是那么简单。所以,用他们的。