为自己编写的windows应用程序制作安装包

摘要:
1.编写Windows程序后,如何制作安装包?这可以直接在VS中发布。您可以制作msi的安装包和exe的安装包。2.Windows应用程序安装包做什么?如果安装了rpm安装包,它只会将相应的文件复制到不同的目录中。5WindowsInstaller 5.1 WindowsInstaller解析Windows安装包中的指令表并完成安装过程。5.2 windowsInstaller的标准操作。Windows安装程序在安装包中使用的表:有许多表.2.1操作将产品、功能和部件发布到Windows系统。

1 写好了一个windows程序之后如何制作安装包

这个在vs中就可以直接发布了,可以制作msi的安装包和exe的安装包。

2 window应用程序安装包做了哪些事情

rpm安装包的话,只是把相应的文件拷贝到不同的目录。那么window安装包做了什么呢?

msi里面有一个table,里面是一条条的指令,windows installer会解释并执行这些指令。

它还是会把安装包里面的文件拷贝到相应的目录。关键是它除了拷贝还做了哪些事情呢?

3 安装包除了把相应的文件放到不同的目录下,还做了哪些事情,比如注册表

第一,将安装的产品告诉给系统。

第二,查找系统是否有我需要的某个文件,不如某个动态库。

第三,计算本次安装需要占用的磁盘空间的大小,判断当前的磁盘空间是否够。

第四,修改注册表。

4 安装包操作注册表是为什么?注册表在程序安装和运行过程中起到了什么作用

可以在制作安装包的时候向注册表中添加键值对,这个键值对可以在代码中访问。

5 windows installer

5.1 windows installer解析windows安装包中的指令table,完成安装过程

5.2 windows installer的标准动作

安装包中被windows installer使用的tables:

有很多的tables

5.2.1 发布产品、特性和部件的action

就是把产品、特性和部件告诉给windows系统。

5.2.2 文件查找action

安装的时候,查找系统中是否存在某个文件。

5.2.3 file costing action

看当前的安装需要消耗多少的磁盘空间。

5.2.4 文件安装action

就是讲指定的文件从源目录拷贝到目的地目录。

5.2.5 修改注册表action

当部件和文件都安装到目的地目录之后,就可以修改注册表了。只有在文件安装action执行完成之后,才能执行注册表修改action。

5.2.5.1 RegisterClassInfo action

注册安装部件的COM类信息。

5.2.5.2 RegisterExtensionInfo action

5.2.5.3 RegisterProgIdInfo action

5.2.5.4 RegisterMIMEInfo action

5.2.5.5 WriteRegistryValues action

5.2.5.6 RemoveRegistryValues action

这个是卸载的时候执行的。

参考资料:

https://msdn.microsoft.com/en-us/library/windows/desktop/aa372022(v=vs.85).aspx

orca tool

https://msdn.microsoft.com/en-us/library/windows/desktop/aa370557(v=vs.85).aspx

免责声明:文章转载自《为自己编写的windows应用程序制作安装包》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Markdown简单使用NestJS WebSocket 开始使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

安装多个ORACLE导致多个Oracle HOME的情况!

Oracle由于版本的不同,在注册表中产生的注册表信息也有所不同,但主要的键值信息还是一样的,例如Oracle10g比oracle9i在注册表中表现的更为“简洁”,在未知的情况下,获取Oracle10g的相关信息,需要模糊查询一下键值  SOFTWAREORACLEKey_* Key_后面跟着是OracleHomeName的信息,默认情况如 KEY_Ora...

如何删除通知栏无效图标(重置任务栏通知区域)

如何删除通知栏无效图标 WIN10 在WIN10操作系统中,右下角的通知栏,会显示众多图标,一部分直接显示在外,另一部分则隐藏在三角按钮中。 于是乎,会有这样一个操作设置:设置->任务设置栏->选择那些图标显示在任务栏上 但是这里会显示所有的曾经出现过的图标,包括已经删除或者卸载过的图标。一段时间使用过后,会有大量无效图标。 如何清除重置?...

注册表比较工具

RegShot 是一种注册表比较工具,它通过两次抓取注册表而快速地比较出答案。它还可以将您的注册表以纯文本方式记录下来,便于浏览;还可以监察 Win.ini,System.ini 中的键值;还可以监察您 Windows 目录和 System 目录中文件的变化,为您手工卸载某些软件创造条件。 1.下载地址 https://sourceforge.net/pr...

Win10阻止电脑关机时弹出正在关闭应用的方法及恢复

安装Windows10系统的电脑,当我们没有结束所有运行的程序而关机时,会弹出正在关闭 n 个应用并关机的提示。 阻止 Windows10 系统电脑关机时弹出正在关闭 n 个应用并关机提示的方法 第一步:制作一个自动关闭应用程序的注册表文件,添加到注册表中,可以解决Windows10系统电脑关机时弹出正在关闭 n 个应用并关机的提示。 将下面的内容复制到...

msicuu.exe (msizap.exe),程序的作用

msicuu.exe  (msizap.exe)(系统不自带,需要自行下载):添加删除程序      用完某个软件之后,你可能想要将它删除。不过,有时原本应该轻而易举的删除操作,系统却莫名其妙地死机,或者出现稀奇古怪的错误信息。导致删除故障的原因很多,可能是软件本身未经充分测试,也可能是注册表配置损坏或失效。不要急,Support Tools能够助你一臂之...

Office软件64位和32位注册表

某些时候,安装Office软件的时候,会出现报错,或者即便安装成功了,电脑上存在的Office软件的版本不同,都可能在使用的时候有点问题。 相关错误: 1-安装Office2016的设备上还存在Office的残留注册表 2-安装Office2016(64位)的设备上还存在32位Office的注册表 3-Outlook2016无法搜索邮件,即便确认Windo...