原文:INNO SETUP卸载程序中加入自定义窗体 [Setup] AppName=My Program AppVerName=My Program v.1.2 DefaultDirName={pf}/My Program [Files] Source: Files/*; DestDir: {app} [Code] const bidDelAll = 1; bidSkipAll = 2; var Form: TSetupForm; CheckListBox: TNewCheckListBox;…
Inno setup 卸载时删除程序文件夹(文件) //删除所有配置文件以达到干净卸载的目的 procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); begin if CurUninstallStep = usUninstall then if MsgBox('您是否要删除用户配置信息?', mbConfirmation, MB_YESNO) = IDYES then //删除 {app} 文件夹及其中所有文件 D…
原文 http://blog.sina.com.cn/s/blog_5e3cc2f30100cc49.html 本文介绍添加和自定义“左下角标签”的方法. 界面预览: Setup技巧[界面]添加和自定义左下角标签" title="Inno Setup技巧[界面]添加和自定义左下角标签"> 在脚本中添加以下代码: [Messages] BeveledLabel=MyProg 1.0 如果想对标签进行个性化设置可以添加以下代码到[Code]段: procedure Init…
原文:C程序中引用自定义的C函数模块 我们知道,刚开始接触C语言编程,一般都是在一个.c或者.cpp(以下只说.c)的文件中编写代码,其中一定会有一个入口函数, 也就是main()函数,你可以将程序代码全部写在main函数里,当然如果你想要程序更加模块化,也可以将一些操作写在一个函数 里,这些函数的声明和定义也都是在main函数中. 想想,随着你的代码量越来越大,实现的功能越来越多,在一个.c文件中,你定义了许许多多的函数,这些函数实现着不同功能, 并且都是混杂在一起,你会不会感觉看着自己写的代…
微信小程序中的组件 前言 之前做小程序开发的时候,对于开发来说比较头疼的莫过于自定义组件了,当时官方对这方面的文档也只是寥寥几句,一笔带过而已,所以写起来真的是非常非常痛苦!! 好在微信小程序的库从 1.6.3 开始,官方对于自定义组件这一块有了比较大的变动,首先比较明显的感觉就是文档比以前全多了,有木有!(小程序文档),现在小程序支持简洁的组件化编程,可以将页面内的功能模块抽象成自定义组件,以便在不同的页面中复用,提高自己代码的可读性,降低自己维护代码的成本! 本篇文章就是手把手教你实现小程序…
; 脚本由 Inno Setup 脚本向导 生成!; 有关创建 Inno Setup 脚本文件的详细资料请查阅帮助文档! #define MyAppName "小小鸟软件"#define MyAppVersion "2012.2.29"#define MyAppPublisher "小小鸟科技"#define MyAppURL "http://www.cnblogs.com/IT-SmallBird/"#define MyAp…
1.源起: KV项目下载底层升级包,老是报出升级文件占用问题,反复分析,不得其所. 今天突然发现同时启动多个升级程序实例,分析认为安装包同时被调用多次,引发实例访问文件冲突,导致此问题. 安装程序由Inno Setup制作,遂找其解决方案,最先想到的是互斥体,就由此开始! 2.AppMutex [Setup] AppMutex=MyAppMutex 安装程序Setup段,此互斥变量,会在安装程序启动时检测是否有此互斥体的程序在运行,若有则提示: 通常在程序中置同名互斥体,此处判断,可避免程序在运…
Inno setup是一个制作安装包的免费工具,比如你用Qt开发完成一款软件,拿Inno setup打个安装包甩给客户安装就好了. 但是bho插件在注册后,万一用户卸载软件时,bho插件还是躺在管理加载项的列表里面,强迫症的我受不了... 特此,记录一下卸载软件时,如何注销bho插件. #define MyAppUnregName "unregister.bat" [UninstallRun] Filename: "{app}\{#MyAppUnregName}"…
 其实小程序开发很像vue和react的结合,数据绑定和setData  重新渲染页面的数据,最近发现连写组件都是很像,也是醉了,自我认为哈, 因为小程序可以将页面内的功能模块抽象成自定义组件,以便在不同的页面中复用,提高自己代码的可读性,降低自己维护代码的成本 下面看看代码: 1.我们初始化一个小程序(本示例基础版本库为 1.7 ),删掉里面的示例代码,并新建一个 components 文件夹,用于存放我们以后开发中的所用组件,今天我们的目的是实现一个 弹框 组件,因此,我们在 compone…
使用多个窗体搭建的程序,需要用到窗体间的数据传递,常用两种方法: 方法一 1,进入子窗体的Designer.cs,将子窗体中的私有控件控件定义为public 2.在主窗口程序Form1.cs中将子窗口实例化 3.直接引用子船体中的控件 方法二: 在Program里 建一个结构体:里面定义一个静态变量,这个变量在FORM1 和FORM2 中可以通用:直接赋值取值就好:using System;using System.Collections.Generic;using System.Linq;us…
Step1 我们初始化一个小程序(本示例基础版本库为 1.7 ),删掉里面的示例代码,并新建一个 components 文件夹,用于存放我们以后开发中的所用组件,今天我们的目的是实现一个 首页 组件,因此,我们在 components 组件中新建一个 home 文件夹来存放我们的弹窗组件,在 home 下右击新建 Component 并命名为 home 后,会生成对应的 json wxml wxss js 4个文件,也就是一个自定义组件的组成部分,此时你的项目结构应该如下图所示: Step2 组…
1.32位程序的PSVince.dll插件方法. [Setup] AppName=PSVince AppVerName=PSVince 1.0 DisableProgramGroupPage=true DisableStartupPrompt=true OutputDir=. OutputBaseFilename=testpsvince Uninstallable=false DisableDirPage=true DefaultDirName={pf}\PSVince   [Files] So…
VC++编程中,我们可以为自己的程序加入音乐,比如当我们按下一个按钮时或者启动程序时,播放一小段音乐. 该功能用到函数: BOOL PlaySound(LPCSTR pszSound, HMODULE hwnd,DWORD fdwSound); 参数定义: 参数pszSound是指定了要播放声音的字符串(一般是绝对路径,如果把声音文件拷到可执行文件所在路径就可以直接用声音文件名),该参数可以是WAVE文件的名字,或是WAV资源的名字,或是内存中声音数据的指针,或是在系统注册表WIN.INI中定义…
[Code]function InitializeUninstall(): Boolean; var MainRun: HWND; var MVRun:HWND; begin// FindWindowByWindowName函数参数为窗口名,即窗口标题,而非进程名. MainRun := FindWindowByWindowName('主窗口'); MVRun := FindWindowByWindowName('Connector'); if (ScreenRun<>0) or (MVRun…
原文:Using Custom Icons in Your Ext JS App 作者:Lee BoonstraLee is a technical trainer at Sencha. She's located in Amsterdam and has experience in both front-end and back-end development. Lee spends her spare time developing web and mobile apps. She is w…
https://www.devexpress.com/Support/Center/Example/Details/E911…
很早就遇到这个问题,QDAC作者也在这里给出了方案.…
某些系统文件,例如驱动,不重启无法删除. 利用windows注册表里的 RunOnce.注意必须在HKLM下,否则可能权限不够. 不能直接填cmd命令,要以cmd的参数形式填写. procedure CurUninstallStepChanged (CurUninstallStep: TUninstallStep); var mres : integer; begin case CurUninstallStep of usPostUninstall: begin mres := MsgBox('…
我最近写了一个MFC应用程序,想发给其他的小伙伴玩一玩,直接发了个exe文件过去,结果发现小伙伴那边打不开.原来这个exe文件虽然是MFC静态编译的,但是还依赖了其他几个.dll文件,需要把这几个dll文件和exe文件放在同一个目录下,才能正常打开.这也没什么,后来发现还不行?跳出来一个提示框,大意是在某个路径下没有找到需要的文件(这个程序基于其他软件的开发包,所以就会在没有安装该软件的电脑上出现这样的提示)...那怎么解决呢?难道移植到其他电脑的时候,还要手动复制文件到指定的目录... 更便捷…
前面说到过可以使用不用的语言文件实现不同的显示方式,方便与国际接轨,事实上即使没有语言文件也可以实现修改.[Messages]段用于定义安装程序和卸载程序中显示的消息.一般不需要创建 [Messages]段,因为所有的消息在Inno Setup的Default.isl文件(或在[Languages]段指定的语言选项) 中已经包含.但是可以通过覆盖默认的消息,打造自己的消息显示界面.打开Inno Setup目录下的该文件,其中button的定义如下: ; *** Buttons ButtonBac…
需求使用Inno Setup打包程序之后,很多时候我们需要在安装文件之前卸载原有的程序而不是覆盖安装,本文的Code就是实现了这样的功能.如果想要在安装前先卸载,那么需要加下面代码,需要注意的是双星号里面的 `{3FC1FD05-BEC7-430A-B7DB-F07155FDE93E}` 部分的改为你们自己的.网上看到有些说_is1前面用AppName,但是我这边不行,下面code中 `{3FC1FD05-BEC7-430A-B7DB-F07155FDE93E}` 为你的程序名,可以去你的 In…
前面说到过可以使用不用的语言文件实现不同的显示方式,方便与国际接轨,事实上即使没有语言文件也可以实现修改.[Messages] 段用于定义安装程序和卸载程序中显示的消息.一般不需要创建 [Messages] 段,因为所有的消息在Inno Setup的Default.isl文件 (或在[Languages] 段指定的语言选项) 中已经包含.但是可以通过覆盖默认的消息,打造自己的消息显示界面.打开Inno Setup目录下的该文件,其中button的定义如下: ; *** Buttons Butto…
本文转载自:http://blog.csdn.net/yushanddddfenghailin/article/details/17250837 前面说到过可以使用不用的语言文件实现不同的显示方式,方便与国际接轨,事实上即使没有语言文件也可以实现修改.[Messages] 段用于定义安装程序和卸载程序中显示的消息.一般不需要创建 [Messages] 段,因为所有的消息在Inno Setup的Default.isl文件 (或在[Languages] 段指定的语言选项) 中已经包含.但是可以通过覆…
使用Inno Setup打包程序之后,如果想要在安装前先卸载,那么需要加下面代码,需要注意的是红色标注的改为你们自己的.网上看到有些说_is1前面用AppName,但是我这边验证不行. [Setup] ; NOTE: The value of AppId uniquely identifies this application. ; Do not use the same AppId value in installers for other applications. ; (To genera…
使 用 笔 记 1.Inno Setup 是什么?Inno Setup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 1997 年,Inno Setup 今天在功能设置和稳定性上的竞争力可能已经超过一些商业的安装程序制作软件.关键功能:★ 支持现在所有正在使用的 32 位 Windows 版本: Windows 95,98,2000,Server 2003,XP,Me,NT 4.0 (不需要服务包). ★ 支持创建单个 EXE 格式的安装程序,使你的程序可以很方便地在网络上发表…
使 用 笔 记https://blog.csdn.net/dongshibo12/article/details/79095971 1.Inno Setup 是什么?Inno Setup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 1997 年,Inno Setup 今天在功能设置和稳定性上的竞争力可能已经超过一些商业的安装程序制作软件.关键功能:★ 支持现在所有正在使用的 32 位 Windows 版本: Windows 95,98,2000,Server 2003,XP,…
1. 卸载时,如何判断应用程序是否运行    InnoSetup 提供变量AppMutex,用来保存应用程序的Mutex名称.现在很多应用程序都是唯一实例运行.这样避免配置文件被错误修改以及其他很多衍生问题.通常都会用WindowsAPI CreateMuex来创建一个Mutex:安装包卸载时会判断AppMutex是否已经被占用.如果被占用则等待并提示用户关闭应用程序.如果应用程序正在运行,通常该exe文件和被使用的dll是不会被删除的,卸载不完全. 在Inno Setup Compile 配置…
[转]Inno Setup教程-常见问题解答 功能 * 翻译 Inno Setup 文字  * 它支持 MBCS (多字节字符集) 吗?  * 将来会支持 Windows Installer 吗?  * 怎样更改 Setup.exe 的图标?  * 可以用 Inno Setup 创建一个带条件的安装程序吗 - 例如,仅在某个注册表键或文件存在时进行?  * “网络安装”功能在哪里?  * 可以不使用 /SILENT 或 /VERYSILENT 命令行参数创建一个后台安装程序吗?  * 安装程序可…
系统开发好之后,通常需要制作成安装包,才能卖给用户.利用Inno Setup的向导可以制作简单的安装包,但是如果要做个好的安装包的话可能会遇到一些麻烦,今日终于抽空解决了,Inno Setup打包的一些问题.具体如下: 1. 卸载时,如何判断应用程序是否运行    InnoSetup 提供变量AppMutex,用来保存应用程序的Mutex名称.现在很多应用程序都是唯一实例运行.这样避免配置文件被错误修改以及其他很多衍生问题.通常都会用WindowsAPI CreateMuex来创建一个Mutex…
前段时间我完成了几个软件的汉化,想把它们打包起来,可是苦于我是一个很菜的鸟,很笨的瓜,只好上网找关于安装程序制作的文章.不幸我没能找到:-( 没法只好自己去华军软件园里找找制作安装程序的软件,并一把下载了好多个... EasySetup 2.08CreateInstallSetup GeneratorInstaller VISE汉化精简版Inno Setup Compiler汉化版Install Maker Pro... 经过好长一段时间的学用和试用,发现上面的(包括网上供下载的大部分)制作安装…