C# 编码安装程序

C# 编码安装程序,c#,installation,C#,Installation,可以编写自己的c#应用程序来创建安装程序吗(我的意思是对安装程序进行编码,不要使用InstallShield或Visual Studio安装项目或其他任何东西?如果“确定”是指推荐,那么“否”,您应该改为使用,它比编写您自己的解决方案容易/快得多。如果“确定”是指推荐,那么“否”,您应该改为使用,它比编写您自己的解决方案容易/快得多。离子。是的,这样做“没关系”,但我怀疑这种愿望- 这样做的问题有两个方面: 你正在做很多安装程序可以为你做的工作,而且可能做得更好,因为它们已经过大量的测试。为什么

可以编写自己的c#应用程序来创建安装程序吗(我的意思是对安装程序进行编码,不要使用InstallShield或Visual Studio安装项目或其他任何东西?

如果“确定”是指推荐,那么“否”,您应该改为使用,它比编写您自己的解决方案容易/快得多。

如果“确定”是指推荐,那么“否”,您应该改为使用,它比编写您自己的解决方案容易/快得多。

离子。

是的,这样做“没关系”,但我怀疑这种愿望-

这样做的问题有两个方面:

  • 你正在做很多安装程序可以为你做的工作,而且可能做得更好,因为它们已经过大量的测试。为什么要避免一个做得合理的完美的工具来开发你自己的(可能很差的)替代品呢

  • 如果使用C#编写此代码,则需要在安装程序能够执行之前安装.NET framework。通常,本机引导程序会在调用安装程序之前确保安装了该框架

  • 是的,这样做“没关系”,但我怀疑这种愿望-

    这样做的问题有两个方面:

  • 你正在做很多安装程序可以为你做的工作,而且可能做得更好,因为它们已经过大量的测试。为什么要避免一个做得合理的完美的工具来开发你自己的(可能很差的)替代品呢

  • 如果使用C#编写此代码,则需要在安装程序能够执行之前安装.NET framework。通常,本机引导程序会在调用安装程序之前确保安装了该框架


  • 从某种意义上说,你将重新发明轮子,很有可能,根据安装的复杂性,你会出错。安装人员知道如何正确调用安装api来注册应用程序以进行卸载。他们知道如何正确安装windows服务、创建“开始”菜单项、设置shortcuts等

    我个人衷心推荐WiX,它提供了基于MSI安装的所有灵活性,以及基于xml脚本的灵活性和简单性

    编写批处理脚本以将应用程序复制到位并创建一些注册表项非常容易。确保安装程序在任何部分安装失败时回滚事务并非易事。这是MSI安装固有的,也是交付应用程序的首选方式


    如果您不想学习WiX,也不关心使用MSI(基于数据库的事务性)安装,至少看一看NSIS。只需几行脚本就可以轻松完成基本的安装,而且它至少可以正确调用安装API。此外,您还可以获得一个很好的GUI。从某种意义上说,您将重新发明轮子,根据安装的复杂性,很有可能搞错了。安装程序知道如何正确调用安装api来注册要卸载的应用程序。他们知道如何正确安装windows服务、创建“开始”菜单项、设置快捷方式等

    我个人衷心推荐WiX,它提供了基于MSI安装的所有灵活性,以及基于xml脚本的灵活性和简单性

    编写批处理脚本以将应用程序复制到位并创建一些注册表项非常容易。确保安装程序在任何部分安装失败时回滚事务并非易事。这是MSI安装固有的,也是交付应用程序的首选方式

    如果您不想学习WiX,也不关心使用MSI(基于数据库的事务性)安装,至少看一看NSIS。只需几行脚本就可以轻松完成基本的安装程序,而且它至少可以正确调用安装API。此外,您还可以获得一个漂亮的GUI。请参见

    更大的问题是,为什么要创建自己的安装程序?您试图解决的问题是什么,无法用现有的安装程序解决安装程序?更大的问题是为什么要创建自己的安装程序?您试图解决的问题是什么,而现有安装程序无法解决?