[转]NSIS 制作安装包无法创建桌面快捷方式或无法删除开始菜单项

用户将桌面文件转移了,如: D:\Doc\Desktop  ,安装程序后,桌面不会生成快捷方式, 或者卸载后,开始菜单中的文件也不会被删除

NSIS卸载后无法删除开始菜单中的内容
原因:
因为NSIS中使用CreateShortCut创建快捷方式时会在每一个人用户下面都创建快捷方式,然后Delete删的时候却只是在当前用户下,因此怎么删也删不掉。
解决方案:
删除所有用户下的快捷方式。首先添加RequestExecutionLevel admin,然后在创建快捷方式和删除快捷方式的地方加上SetShellVarContext all即可。

原文:https://blog.csdn.net/yulinxx/article/details/47953997

原文地址:https://www.cnblogs.com/small-lazybee/p/9870083.html

时间: 2024-11-11 15:12:16

[转]NSIS 制作安装包无法创建桌面快捷方式或无法删除开始菜单项的相关文章

解决Inno Setup制作安装包无法创建桌面快捷方式的问题

转自:http://yedward.net/?id=104 昨天想把个java程序做成exe安装软件,然后就去下载了Inno Setup这个软件安装包制作软件,Inno Setup这个软件确实非常好用,但是由于我下载的中文汉化版,根据向导一步步来就是不创建桌面快捷方式,折腾了很久,终于找到了解决方法. 下面是我使用Inno Setup打包软件后自动生成的一段代码: 1 2 3 [Tasks] Name: "desktopicon"; Description: "{cm:Cre

Mono制作安装包让C#桌面应用程序脱离net framework步骤

1.  下载安装Cygwin http://www.cygwin.com/ 安装时,请将mingw-gcc.mingw-zlib.pkg-config.libiconv这几个组件选上,这是将.NET程序转化为本地程序的必要的编译环境. Cygwin环境中标题栏右键设置字符集解决中文乱码 2. 启动cgywin并设置环境变量:1.点击开始菜单或桌面上的cygwin图标,启动且进入cygwin环境.2.输入下面的命令,设置或修改必要的环境变量:    exportPKG_CONFIG_PATH=/c

使用Mono Runtime Bundle制作安装包让C#桌面应用程序脱离net framework

在Xamain 未被收购之前,这货monodroid.exe  就是一个打包的绑定...无奈 配置环境复杂,未能实现 ...有mono运行时就行了..不折腾了 玛德 让C#程序独立运行(脱离 .NET Framework运行,绿色运行) 博客分类: dotnet .netwinformc# 作者:小生.我怕怕 网址:http://www.apkbank.net http://www.17zouguo.net 我觉的MS的.net方案其实很不错.C#呢,用现在流行的话来说“很给力”! 但是.net

java程序打包jre以及制作安装包

分享一篇文章: java程序打包jre以及制作安装包 传智&黑马咨询郑老师 java程序打包jre以及制作安装包Java的桌面程序写好以后只能在eclipse下运行是不可以的,还需要将程序拷贝到其他电脑上运行才可以,所以需要制作成其他电脑可以运行的文件,当然在安装有jdk的电脑上只需要将程序导出为jar文件就可以运行了,但是除了开发java程序人员的电脑上会安装jdk,其他人的电脑上不会有这个环境,所以还需要将java可运行的环境一同打包到程序中去,这样,在用户不安装jdk的情况下也可以运行.制

win7平台下QT软件的打包与发布 (利用NSIS脚本制作安装包)

接上文:http://blog.csdn.net/shallen320/article/details/44915649 上文介绍了如何查找Qt程序依耐性,如何利用NSIS 和 .zip文件制作简单的压缩包.上文所用的方法制作的安装包十分简单,连创建桌面快捷方式都没有.本文介绍如何使用NSIS脚本语言制作一个略微复杂的安装包. 下面是我使用的NSIS脚本语言范例,含有简单全面的功能,包括: 设置安装文件版本,公司,版权信息 安装拷贝指定文件 创建开始菜单,桌面快捷方式 创建卸载程序,并能在win

linux下二进制安装包的创建

一个合格的产品必须要有一个像样的安装包,每次拷来拷去显得太不上档次,哈哈...也不便于用户使用. 闲话不多扯,直奔主题,看过来吧,程序猿(媛)们:本文主要介绍二进制安装包的创建和使用: 1.首先介绍二进制安装包的结构: 1)最终生成的二进制安装包的名称为:Project.run 2)用于生成安装包的准备文件结构如下: ./mkinst.sh ./inst.sh ./Project-V1.0.tar.gz/Product-V1.0/work/product-inst.sh ./Project-V1

运用VS制作安装包

一.VS2005制作安装包的“系统必备”选项“系统必备”,通过该选项,可以选择部署应用程序需要预先安装的组建,包括.net fx和MDAC等.“系统必备”选项中可以不仅可以选择需要预安装的组件,而且提供了“安装源”的自由选择.打开系统项目属性,选择发布->系统必备,如下图: 在系统中我们把dotnet2.0框架打包到项目布署中,当安装软件的用户当前没有dotnet2.0框架时将自动进行dotnet2.0框架的安装,安装完框架后才继续软件系统的安装.二.制作安装布署程序的步骤1.新建项目,选择安装

使用Qt installer framework制作安装包(不知道是否适合Mac和Linux?)

一.介绍 使用Qt库开发的应用程序,一般有两种发布方式:(1)静态编译发布.这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中.其优势是简单单一,所有的依赖库都集中在一起,其缺点也很明显,可执行程序体量较大,光Qt核心库加起来就得十多兆.(2)制作安装包发布.这种方式的原理也简单,就是将可执行程序和其依赖的库文件一起打包压缩,制作成安装包发布.制作安装包的工具挺多,今天要说的是Qt官方的安装包制作框架Qt installer framework.这个框架由Qt官方出品,广泛应用

installshield 制作安装包中执行其他程序LaunchAppAndWait的简介

最近在研究用instanllshield来制作安装包,并进行数据的创建,掌握到installshield中的LaunchAppAndWait 函数该函数是在运行的时候,运行其他程序,并能传递参数以及是否静默运行的效果. 例如: szScriptPath =SUPPORTDIR+"\\CREATEORACLEUSER.SQL";    LongPathToQuote(szScriptPath, TRUE);    szCmdLine = DBUSER + "/" +