首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何让Inno Setup忽略空目录?

对于Inno Setup,忽略空目录可以通过在脚本中设置“Skipifsilent”参数来实现。具体步骤如下:

  1. 在Inno Setup脚本中添加“AppId”和“AppVersion”参数,这两个参数的值可以从命令行参数中获取。
  2. 在脚本中添加“Skipifsilent”参数,并将其值设置为“1”。这将告诉Inno Setup在安装程序运行时如果目录为空就不进行任何操作。
  3. 将“AppId”和“AppVersion”参数的值设置为安装程序所需的唯一标识符和版本号。
  4. 在安装程序的主程序段中添加“SilentInstall”命令,该命令用于静默安装。
  5. 在“SilentInstall”命令中添加“Skipifsilent”参数,并将其值设置为“1”。这将告诉安装程序如果目录为空就不进行任何操作。
  6. 最后,在安装程序的“Output”窗口中输出安装日志,以便在安装过程中出现问题时进行调试。

以下是一个示例脚本:

代码语言:bash
复制
[Setup]
AppId=1D7A5470-942F-4649-8B69-122888AB0BA5
AppVersion=1.0.0+1
AppName=MyApp
AppPublisher=Me
AppPublisherURL=https://www.example.com
AppSupportURL=https://www.example.com
AppUpdatesURL=https://www.example.com
DefaultDirName={autopf64}\MyApp
DisableProgramGroupPage=yes
OutputDir=.
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes
SetupIconFile=
WizardStyle=modern
PrivilegesRequired=none
ArchitecturesAllowed=x64
ArchitecturesInstallIn64BitMode=x64
Skipifsilent=1
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "launchAtStartup"; Description: "{cm:AutoStartProgram,}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "C:\path-to-your-software\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons]
Name: "{autoprograms}\"; Filename: "{app}\your-main-executable.exe"
Name: "{autodesktop}\"; Filename: "{app}\your-main-executable.exe"; Tasks: desktopicon
Name: "{userstartup}\"; Filename: "{app}\your-main-executable.exe"; WorkingDir: "{app}"; Tasks: launchAtStartup
[Run]
Filename: "{app}\your-main-executable.exe"; Description: "{cm:LaunchProgram,}"; Flags:  nowait postinstall skipifsilent

这个示例脚本将创建一个带有桌面图标和用户启动菜单项的软件。在安装过程中,如果目录为空,则不会在目标目录中创建任何子目录。在安装完成后,将在目标目录中创建一个名为“{autopf64}\MyApp”的目录,并将安装程序的可执行文件放入其中。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

常用软件打包类型及静默安装参数(nsis|msi|InstallShield|Inno)

/M2 在调试器会话期间保留供WISE内部使用 示例: setup.exe /T 卸载WISE: /Z 删除空目录,包括其中包含不明智的目录。 /A 自动模式,除了取消,没有其他用户选择。...六、Inno Setup 使用 Inno 技术制成的程序安装包可以使用 /SILENT 和 /VERYSILENT 参数进行静默安装。...我们可以通过使用一个参数跳过这个对话框: setup.exe /silent /suppressmsgboxes 有些利用 Inno 技术做作的安装包会在程序安装完毕后自动运行所安装的程序,例如:ISOBuster...以下是一个可以用于批处理文件安装 Inno 打包的软件的命令的示例: ECHO....Inno Setup 制作的安装文件,请使用下面的明显,安装完直接重启: setup.exe /sp- /silent /norestart 如何判断哪个安装程序是用 Inno 技术打包的?

12.2K22

使用 Inno Setup 制作桌面软件安装包

现在我们还缺少第 4 步“创建安装包”,这篇文章将讲解如何在 Azure Pipelines 中使用 Inno Setup 创建安装包。 2. 使用 Inno Setup 创建安装包 ?...我的公司通常使用 Inno Setup 制作安装包,在 Azure Pipelines 中使用 Inno Setup 也十分简单,于是这篇文章将使用 Inno Setup 作为制作安装包的例子。...Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!...在 Azure Pipelines 上运行 Inno Setup 把 SetupScript.iss 推送到 Azure Repos 上,然后修改对应的 Pipeline。...Pipeline 中需要添加两个任务: 一个负责使用 Chocolatey 下载并安装 Inno Setup 的任务 一个调用 Inno Setup 运行 SetupScript.iss 的任务 然后修改

2.2K10

利用Inno Setup在VS编译时自动构建安装包

Setup为例简单演示下如何构建安装包,以及在Visual Studio中编译程序时自动去构建这个安装包。...操作演示 Tips:如果是想自动化构建,建议先从文章尾部开始看起,前面只是简单演示如何手动构建 2.1....去官网下载Inno Setup打包工具 点击 Inno Setup Downloads[1] 下载: 如果有中文需求,则需下载中文包,下载地址:Inno Setup Translations[2]...安装包语言选择 官方默认是不提供中文语言包的,但官网上有第三方用户提供和维护了中文包,有需要的可以在 Inno Setup Translations[3]下载,然后手动放进Inno Setup安装目录下的...附录 Inno Setup官网:https://jrsoftware.org/ Inno Setup编辑器:https://jrsoftware.org/isdl.php Inno Setup语言包:https

38120

Inno Setup 安装包脚本 Run 的 Flags 标记

在制作安装包的时候,可以在 Inno Setup 安装包脚本的 Run 里面添加在解压缩安装包文件完成之后,整个安装结束之前执行指定的命令,是作为定制化最高的内容 有小伙伴觉得安装包脚本比较难写,也不熟悉...推荐的方法是自己写安装辅助 exe 程序,在安装包解压缩完成之后调用辅助安装程序,这样安装逻辑可以放在安装程序,而安装程序本身可以使用自己熟悉的语言开发 在 Inno Setup 安装包脚本,可以在 Run...安装程序}";Flags: runhidden 上面代码就是在解压缩完成之后调用 After.bat 执行批处理,上面的 {app} 就是程序解压缩文件夹,也就是路径是绝对的 而想要执行命令,就会遇到如何执行命令的问题...如果传入的文件不存在,那么什么都不做就跳过 skipifnotsilent 如果当前不是静默安装模式,那么跳过 在 Inno Setup 安装包,可以通过 /silent 命令或 /verysilent...Setup Help

2.3K20

安装打包程序检测运行进程并提示结束解决方案(Inno Setup) )

而在执行安装前我们可以通过使用 Inno Setup 检测当前系统中运行的进程,如果有用户在执行了某些进程,那么通过该检测就可以有效的提示用户先关闭进程后再执行安装。...而在执行安装前我们可以通过使用 Inno Setup 检测当前系统中运行的进程,如果有用户在执行了某些进程,那么通过该检测就可以有效的提示用户先关闭进程后再执行安装。...以下是大眼仔旭收集的详细的 Inno Setup 检测运行进程并提示结束解决方案代码,您可以根据自己的需要复制到 Inno Setup 脚本中合理使用即可。...1.5 DefaultDirName={pf}\My Program OutputDir=userdocs:Inno Setup Examples Output Compression=lzma/ultra...Setup 脚本的灵活运用可以您能在执行安装的时候有很多可以操作执行,关键还是要看你的想法以及您想做些什么。

98630

inno setup读取注册表遇到的一个坑

公司现在要求发布插件时制作一个安装包,用户点击安装包后自动将插件相关文件拷贝到相应目录去。本来用inno setup来做一个安装包,顶多就是一个多目录安装的问题。...二、分析过程       本来拿到需求一想还挺简单的,本来就详细看过Inno setup的文档,读取注册表只需要调用RegQueryStringValue()即可读取注册表中指定项目。...事实上,在inno setup的说明文档中还有另外一种方法可以尝试,也可以避免64bit系统产生的问题。...topic=consts 3、http://stackoverflow.com/questions/4033976/inno-setup-doesnt-allow-access-to-all-registry-keys-why...//stackoverflow.com/questions/32727865/how-to-install-sys-file-into-c-windows-system32-drivers-with-inno-setup

2.5K60

Spring Boot项目打包成exe的踩坑日记!

转换成exe的工具,链接:https://pan.baidu.com/s/1J30uUMJcYnqWCJSr6gkM5w 提取码:6esr 注册码:L-g782dn2d-1f1yqxx1rv1sqd inno...照着这个样子写的目的是,最终会把本地jre目录和exe一起打包,exe文件自己去根据路径去查找一起打包的jre,可不用再安装jdk ? 接着下一步,选择Client VM ?...打开inno setup,左上角File - New ? 直接点下一步,填写配置,应用名称,版本等,随意 ? 然后点击下一步,这个地方默认就行,直接下一步 ? 接着选择生成好的exe文件 ?...当绿色滚动条结束后,桌面会多了一个setup.exe文件 ? 也同时会跳出一个安装的,因为程序帮你自动启动生成的安装程序了,安装就可以了,安装的时候记得勾选创建快捷方式 ?...这个就是最后的程序了,双击运行就可以看到结果了,把setup.exe文件给别人安装,就都可以看到自己的程序了。 来源:blog.csdn.net/m0_37701381

1.1K41

如何将 SpringBoot 打包成.exe启动?

2准备 准备工作: 一个jar包,没有bug能正常启动的jar包 exe4j,一个将jar转换成exe的工具 inno setup,一个将依赖和exe一起打成一个安装程序的工具 3开始 以我为例子,我将...在VM参数配置的地方加上:-Dfile.encoding=utf-8 点击下一步,配置JRE 下拉框点击后进入如下界面 照着这个样子写的目的是,最终会把本地jre目录和exe一起打包,exe...打开inno setup,左上角File - New 直接点下一步,填写配置,应用名称,版本等,随意 然后点击下一步,这个地方默认就行,直接下一步 接着选择生成好的exe文件 然后下一步,进入这个界面保持默认...recursesubdirs createallsubdirs 然后直接编译就好了,会提示保存当前脚本,随便起个名字,下个还可以继续用 然后等待绿色滚动条结束 当绿色滚动条结束后,桌面会多了一个setup.exe...文件 也同时会跳出一个安装的,因为程序帮你自动启动生成的安装程序了,安装就可以了,安装的时候记得勾选创建快捷方式 这个就是最后的程序了,双击运行就可以看到结果了,把setup.exe文件给别人安装,

75720

如何把Spring Boot的Jar包做成exe?超详细教程来了!

转换成exe的工具,链接:https://pan.baidu.com/s/1J30uUMJcYnqWCJSr6gkM5w,提取码:6esr,注册码:L-g782dn2d-1f1yqxx1rv1sqd inno...setup,一个将依赖和exe一起打成一个安装程序的工具,链接:https://pan.baidu.com/s/1DgFo1ceM_8Bqx_b-veibbQ,提取码:g9jd 开始 以我为例子,我将...jar包以及配置 在VM参数配置的地方加上:-Dfile.encoding=utf-8 点击下一步,配置JRE 下拉框点击后进入如下界面 照着这个样子写的目的是,最终会把本地jre目录和exe一起打包,exe...Client VM 然后一直下一步,最终出现如下界面 这个时候你会发现桌面多了一个demo.exe文件,这个时候先别着急点开,接下来就是将jre和exe文件再打个包合并,达到在没有jdk电脑环境下也能运行 打开inno...setup,左上角File - New 直接点下一步,填写配置,应用名称,版本等,随意 然后点击下一步,这个地方默认就行,直接下一步 接着选择生成好的exe文件 然后下一步,进入这个界面保持默认,直接下一步

83510

Java打包成.exe完美教程

重点:本文将介绍如何将JavaFx工程打包为.exe文件。如果是jdk14以下打包exe请参考使用exe4j进行打包。...如若想做成可安装的程序的话,请看下一步骤 使用inno setup制作可安装程序 第一步:到官网下载innosetup-6.2.2.exe并安装 注意:innosetup默认的是英文安装,简体中文安装需要自己去官网下载中文语言包...我们将这些脚本代码复制下来,创建一个ChineseSimplified.isl文件,把脚本代码放进去 2,找到Inno Setup安装文件,进入Languages子文件夹,将刚刚的ChineseSimplified.isl...第二步:打开安装好的 Inno Setup Compiler 点击File->New,点击Next,如下图: 第三步:设置应用程序名称和版本号后点击Next(注意是必填) 第四步:设置文件夹名称,一般保留默认就行

1.2K10

Python 图形化界面基础篇:发布应用程序到不同平台

在本篇博客中,我们将详细讨论如何发布 Python GUI 应用程序,以便用户可以在 Windows 、 macOS 和 Linux 等不同平台上使用它。...文档应包括关于如何安装、配置和使用应用程序的详细说明。用户文档对于用户理解应用程序的功能和使用方法至关重要。 1.3 处理平台差异 不同的操作系统平台可能会有不同的行为和要求。...2.3 使用其他工具 除了 cx_Freeze 和 PyInstaller 之外,还有其他一些工具可用于创建安装程序,如 Inno Setup 、 NSIS ( Nullsoft Scriptable...创建一个 Windows Installer ( MSI )文件或使用 Inno Setup 等工具来创建安装程序。这样用户可以轻松地安装和卸载应用程序。...将应用程序打包为可执行文件: pyinstaller --onefile hello_app.py 然后,我们在不同的平台上发布应用程序: 对于 Windows ,我们可以创建一个安装程序(例如:hello_app_setup

33050

git 无法提交空目录 ? (.gitkeep 文件的作用)

1. git 无法提交空目录? ---- 相信大家在项目中肯定会发现空目录是不会被 git 追踪 (track) 的,但这是为什么呢 ?...因为 git 最初的设计是用来索引文件的,所以 git 只关注文件,不关心目录,但是在有些场景下空目录也需要被追踪的 2. 如何提交一个空目录 ?...---- git 无法追踪空目录,但当想要追踪一个空目录时,最主流的做法是在这个空目录中新建一个 .gitkeep 文件,这只是一个约定俗成的空目录识别文件名,除了占位识别空目录,没有其他意义,在很多开源项目中的也是使用这个文件名...,比如: vue cli 2 中的 static 目录 这个占位文件名不是一定要非是 .gitkeep 才行,换个名字一样可以,但使用 .gitkeep 更加规范,别人一看就知道这是一个空目录,vscode...gitignore 文件内容 (忽略目录下的所有内容,但是不忽略 .gitignore): * !.

92210

起底勒索软件Trigona:扮猪吃老虎,闷声发大财

DC6.exe DC6.exe是公开可用工具Advanced Port Scanner的安装程序,常被打包在Inno Setup安装程序包中,而Inno Setup是Windows程序的免费安装软件。...在Inno Setup中藏着Advanced Port Scanner为代码增加了额外的混淆层,其目的是为了逃避静态签名检测。...事实上,这也和Trigona谨慎的攻击风格有关,他们会对受害者目标精挑细选,避免出现在新闻头条,其他的勒索组织、恶意软件占据媒体关注度,从而实现闷声发大财的目的。...这也是本文起底Trigona的意义所在,希望更多的安全人员了解这一恶意软件,而分享Trigona勒索软件常用的攻击手法、工具以及混淆技术等,则是为了帮助安全人员更好地应对新兴攻击,保护企业/组织免受Trigona

1.3K50

【linux命令讲解大全】035.文件删除命令:rm 和 rmdir 的用法详解

type d -prune -exec rm -rf '{}' + 删除文件 rm testfile.txt 删除目录 rm -r [目录名称] 删除操作前有确认提示 rm -i [文件/目录] rm忽略不存在的文件或目录...-f选项(即“force”)此次操作强制执行,忽略错误提示 rm -f [文件...]...不给实例了,操作系统都被你删除了,你太坏了 rm显示当前删除操作的详情 rm -v [文件/目录] rmdir 用来删除空目录 补充说明 rmdir命令用来删除空目录。...命令忽略由于删除非空目录时导致的错误信息; -v或--verboes:显示命令的详细执行过程; --help:显示命令的帮助信息; --version:显示命令的版本信息。...参数 目录列表:要删除的空目录列表。当删除多个空目录时,目录名之间使用空格隔开。

37310

蒋鸿翔:网易数据基础平台建设

图片----导读:首先简单介绍一下网易杭州研究院情况简介,如下图所示:图片我们公司主要从事平台技术开发和建设方面,工作的重点方向主要在解决用户在数据治理中的各种问题,用户能更高效地管理自己的数据,进而产生更大的价值...,比如如何整合现有功能流程,节省用户使用成本;增加新平台不断调研,丰富平台功能;新平台功能、性能改造,从而满足用户大规模使用需求;根据业务实际需求,输出相应的解决方案等。...300GB原始数据,分别导入到Inno DB(未压缩)和Inno Rocks后的存储容量对比,Inno DB为315GB左右,Inno Rocks为50 ~ 60GB,存储容量是Inno DB的20%到...(1)大量数据写入场景,比如日志、订单等;(2)需要高压缩以便存储更多的数据,Inno DB --> Inno Rocks;(3)对写入延迟波动比较敏感,HBase --> Inno Rocks;(4)...相对较低的延迟要求(10 ~ 50ms)下替换缓存场景(延迟 Inno Rocks。

62740

Python sys os getpass 包的导入

yum install 模块名称 pip install 模块名称 pip3 install 模块名称 apt-get 第二种 下载源码 解压源码 进入目录 编译源码 python setup.py...build 安装源码 python setup.py install sys模块 导入方式: import sys 模块用途:调取系统信息 功能介绍 sys.argv 命令行参数List,...并递归到上一级目录,如若也为空,则删除,依此类推 os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname os.rmdir('dirname') 删除单级空目录...如何path以/或\结尾,那么就会返回空值。...将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间 os.path.getmtime(path) 返回

1.3K10
领券