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

Nsis脚本:尝试编写从zip文件中提取特定目录并将其作为安装程序(可执行文件)的一部分的脚本

NSIS脚本是一种用于创建Windows安装程序的脚本语言。NSIS全称Nullsoft Scriptable Install System,是一款开源的安装程序制作工具。通过NSIS脚本,可以实现从zip文件中提取特定目录并将其作为安装程序的一部分。

NSIS脚本的编写可以通过以下步骤完成:

  1. 安装NSIS:首先需要下载并安装NSIS软件,官方网站为https://nsis.sourceforge.io/。
  2. 创建NSIS脚本:使用文本编辑器创建一个以.nsi为后缀的文件,例如install.nsi。
  3. 编写脚本内容:在NSIS脚本中,可以使用一系列的命令和指令来定义安装程序的行为。以下是一个示例脚本:
代码语言:txt
复制
; 定义安装程序名称和版本号
Name "My Installer"
Outfile "MyInstaller.exe"

; 定义安装程序界面
!define MUI_PAGE_CUSTOMFUNCTION_SHOW ShowCustomPage
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE LeaveCustomPage
!insertmacro MUI_PAGE_DIRECTORY

; 定义自定义页面
Function ShowCustomPage
  MessageBox MB_OK "This is a custom page!"
FunctionEnd

Function LeaveCustomPage
  MessageBox MB_OK "Leaving custom page!"
FunctionEnd

; 定义安装过程
Section
  SetOutPath $INSTDIR
  File "path\to\zip\file.zip"
  ExecWait 'path\to\unzip\utility.exe -extract "path\to\zip\file.zip" "path\to\extract\directory"'
SectionEnd

在上述示例中,通过定义安装程序名称、版本号和界面,以及自定义页面和安装过程,实现了从zip文件中提取特定目录并将其作为安装程序的一部分。

  1. 编译脚本:保存NSIS脚本后,使用NSIS软件进行编译。在NSIS软件中,选择"Compile NSIS Script"选项,选择保存的NSIS脚本文件,点击"Compile"按钮即可生成可执行的安装程序。

NSIS脚本的优势在于其简单易学、灵活性高、功能强大。它可以用于创建各种类型的Windows安装程序,并支持自定义界面、安装过程、文件提取等操作。

NSIS脚本的应用场景包括但不限于:

  1. 软件发布:开发者可以使用NSIS脚本创建自己的软件安装程序,方便用户进行安装和卸载。
  2. 软件打包:NSIS脚本可以将多个文件打包成一个可执行的安装程序,方便分发和部署。
  3. 自动化部署:通过NSIS脚本,可以实现软件的自动化部署,减少人工操作。

腾讯云提供了一系列与云计算相关的产品,以下是一些推荐的腾讯云产品和产品介绍链接地址:

  1. 云服务器(CVM):提供弹性计算能力,支持多种操作系统,适用于各类应用场景。详细介绍请参考:https://cloud.tencent.com/product/cvm
  2. 云数据库MySQL版(CDB):提供高可用、可扩展的MySQL数据库服务,支持自动备份、容灾等功能。详细介绍请参考:https://cloud.tencent.com/product/cdb_mysql
  3. 云存储(COS):提供安全、稳定、低成本的对象存储服务,适用于图片、视频、文档等数据的存储和管理。详细介绍请参考:https://cloud.tencent.com/product/cos

以上是关于NSIS脚本的完善且全面的答案,希望能对您有所帮助。

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

相关·内容

GuLoader 转向使用 NSIS 历程

MSIS 是用于开源 Windows 应用安装程序,其典型功能为: 基于脚本且完全免费 恶意代码可以与合法程序打包在一起 可直接调用 Windows API 来加载 .NET 模块、MSSQL 等已有插件...【PE 文件 NSIS 压缩数据】 垃圾邮件 2021 年 11 月,攻击者开始使用 NSIS 可执行文件前,研究人员发现了一个可疑 ZIP 文件。...【执行流程】 2022 年,攻击者转向使用 NSIS 可执行文件。例如将 NSIS 可执行文件嵌入在 ZIP 文件或者 ISO 镜像文件。...【ZIP 文件 NSIS】 【ISO 镜像文件 NSIS】 在压缩文件与镜像文件嵌入可执行文件是能够进行检测逃避,在野发现可用于嵌入 NSIS 可执行文件格式如下所示: 【格式列表】...【简单 NSIS 脚本】 后来,攻击者开始使用混淆 NSIS 脚本。在 2022 年 4 月,攻击者对其进行两次改进。首先,Shellcode 文件扩展名 .dat 更改为随机扩展名。

65630

将独立 Python 网络应用程序分发给非技术用户

我们目前想法是使用 NSIS 创建一个包含 Python 和 Python-LDAP 作为 MSI 安装程序,然后注册我们自己简单基于 Python Web 服务器作为 Windows 服务...NSIS 可以做到这一点吗?例如,NSIS 可以检查当前安装 Python 副本吗?有没有更好方法来做到这一点——是否有方便框架可以让我们将代码放入一个文件夹并将其捆绑起来以制作安装程序?2....方法二您可以使用像 cx_Freeze 这样工具将 Python 脚本转换为可执行文件,然后使用 NSIS可执行文件打包成安装程序。...cx_Freeze 可以将 Python 脚本转换为名为“my_app.exe”可执行文件,然后可以使用 NSIS可执行文件打包成名为“my_app-setup.exe”安装程序,如下所示:1....cxfreeze my_app.py --target-name my_app.exe这将创建一个名为 my_app.exe 可执行文件。2. 使用 NSIS可执行文件打包成安装程序

8810

CPack 入门指南

(ZIP file format) 为什么要用打包工具 软件程序想要在生产环境快速被使用,就需要一个一键安装安装包,这样生产环境就可以很方便部署和使用。...、卸载前后做一些事情时,可以通过写相应脚本文件: preinst:安装脚本文件 postinst:安装脚本文件 prerm:卸载前文件 postrm:卸载后文件 在上述 CMakeLists.txt...⚠️注意:上述四个脚本文件需要权限是所有用户和用户组均能执行,创建完脚本文件后,通过 chmod 755 scripts/*  修改 scripts 目录下面的脚本文件权限。...group, 这个名字会作为 rpm 包名字一部分 cpack_add_component_group(Aprogram) # 添加一个名为 Bprogram group cpack_add_component_group...[Cpack10.png] 更新 CMakeLists.txt 配置之后,重新执行下 cmake 命令生成新 makefile 文件执行 cpack -G RPM,你可以在当前目录下面看到生成两个文件

2.4K51

CMake 秘籍(六)

本章四个节将基于第一章,从简单可执行文件到库,第三部分,构建和链接共享和静态库给出简单示例。在那里我们尝试构建一个非常简单库并将其链接到一个可执行文件。...我们还展示了如何相同文件构建静态和共享库。在本章,我们将更深入地讨论正式化安装时发生事情。...库源代码,编写安装程序,第 3 个配方,导出目标。...在我们示例,我们将其设置为系统上特定位置:/opt/recipe-01。...) 在这里,我们指导 CMake 将编译后 Python 模块文件安装到相对于安装目标位置account子目录(第十章,编写安装程序,详细讨论了如何设置目标位置)。

24400

electron 打包项目

这些工具可以帮助我们将 Electron 应用程序打包为可执行文件根据目标平台生成相应安装程序或应用程序包。...electron-packager:是另一个常用打包工具,支持将 Electron 应用程序打包为各个平台可执行文件,如 Windows、Mac 和 Linux 等。...使用 electron-forge 将 Electron Forge 添加到您应用开发依赖使用其"import"命令设置 Forge 脚手架: npm install --save-dev @...会自动在我们 package.json 增加一些脚本配置: "scripts": { "test": "echo \"Error: no test specified\" && exit 1",...make 命令来创建可分发应用程序: npm run make Electron-forge 会创建 out 文件夹,您软件包将在那里找到: // Example for macOS out/ ├─

22610

常用打包软件总结_打包工作总结

大家好,又见面了,我是你们朋友全栈君 在一年多VB、VC编写过程,使用打包软件先总结下。 工欲善其事,必先利其器。无可否认,一双亮红草鞋和飞驰飞鞋之间差距。...初入上位机,对于打包软件选择也是在跌跌撞撞尝试才能找到适合自己套路 现将其总结如下 NO.1 NSIS NSIS无疑是好用至极,我对之也只能说是相见恨晚。...其实刚在接触软件时就听说过有此东西存在,但却由于其使用脚本语言,故敬而远之。 首先它是免费,还是开源。...其次,功能强大,你可以使用NSIS编辑器向导来生成所需打包脚本,然后再对其中所需功能进行更改即可。 主要功能有,打包文件、添加安装闪屏、背景音乐、自定义安装组件。...主要易用性体现在:打包文件至指定目录(目标文件名修改),修改注册表,添加安装密码 NO.3 安装工厂 这个是我最早使用打包软件了,你可以手动选择软件开发环境,他会根据你工程要求,添加所需组件。

1.1K20

Xmake v2.8.6 发布,新打包插件:XPack

zip: 二进制文件 zip 包(绿色版) srctargz:源文件 tar.gz 包 srczip: 源文件 zip 包 srpm: rpm 源码安装包 rpm: rpm 二进制安装包 除了上述已经支持打包格式...,双击运行它,就能安装我们二进制文件到指定目录。...生成自安装包 我们也可以生成基于 shell 脚本自编译安装包。我们需要配置 runself 打包格式,然后通过 add_sourcefiles 添加需要参与编译安装文件。...接着,我们需要自定义 on_installcmd 安装脚本,里面去配置如果编译源码包,我们可以简单调用一个内置编译安装脚本文件,也可以直接配置 make install 等编译安装命令。...来生成二进制压缩包,它会先自动编译所有绑定 target 目标程序,将所有需要二进制程序,库文件打包到 zip/tar.gz 格式。

24610

CTF取证方法大汇总,建议收藏!

Zip文件分析         大多数CTF挑战都包含在zip,7z,rar,tar或tgz文件,但只有在取证挑战,存档容器文件才是挑战一部分。...Gimp还有助于确认是否真的是一个图像文件,例如,当你内存转储或其他地方显示缓冲区恢复图像数据,但是缺少指定像素格式图像文件头,图像高度和宽度等,Gimp会将你数据作为原始图像数据打开,尝试使用不同设置...如果要编写自己脚本直接处理PCAP文件,建议使用用于pcap操作dpkt Python包。你也可以使用WirepyPython中使用Wireshark。...办公文件分析         迄今为止,微软已经创建了数十种Office文档文件格式,其中许多文件格式已经被网络钓鱼和恶意软件作为传播恶意程序载体,因为它们包含宏(VBA脚本)。...Windows文档一个典型VBA宏会将PowerShell脚本下载到%TEMP%,尝试执行它,在这种情况下,你可以使用PowerShell脚本分析任务。

3.1K31

NSIS 打包脚本基础

简介 NSIS(Nullsoft Scriptable Install System)是一个开源 Windows 系统下安装程序制作程序。它提供了安装、卸载、系统设置、文件解压缩等功能。...这如其名字所指出那样,NSIS 是通过它脚本语言来描述安装程序行为和逻辑NSIS 脚本语言和通常编程语言有类似的结构和语法,但它是为安装程序这类应用所设计。...工具: HW VNISEdit(NSIS脚本编辑器) 1、 使用编辑器NSIS脚本向导功能,自动生成对应nsi脚本。...点击文件->新建脚本:向导,接下来根据向导页面的设置选项一步步设置你需要安装条件。 ? 2、也可以在编辑器编写nsi脚本,然后再编译生成exe安装文件。...脚本结构 NSIS脚本(下称nsi脚本)主要包含安装程序属性、页面、区段、函数。 属性 用来定义安装程序行为和界面风格,这些属性大部分是编译时刻属性,即不能在运行时刻改变。

4.8K60

使用 Swift Package 插件生成代码

将采用符合Fetchable类型来尝试远程或缓存JSON数据块解码它们。...由于这项服务对应用程序正确运行至关重要,作为这项工作一部分,我们希望确保始终存在故障安全( fail-safe)。...这个脚本将完全用 Swift 编写,因为这是我最熟悉语言,承担以下职责: 扫描目标目录提取所有.swift文件。目标将被递归扫描,以确保不会错过子目录。...如下所示脚本导入必要依赖项,创建可执行文件入口点(必须用@main装饰),声明在执行时传递4个输入。 所有逻辑和方法调用都存在于run函数,该函数是调用可执行文件时运行方法。...这是递归完成,这样子目录就不会错过。此目录路径作为参数传递给可执行文件

2.2K20

electron打包爬坑—出坑

前言 昨天一番解了很久想解这个electron打包python可执行文件为一体方法,因为要发布我们小工具,必须要打包为一个安装包啊,不然对于计算机小白来讲太不友好了。...出坑 之前一番用建立工程时build脚本有打包出可electron可执行文件,只是这个里面没有打包入python可执行文件,即使在package.json脚本files字段中加入pydist这个目录...,一看刚开始理解为了卸载目录,仔细一想,不是解压目录吗,进去一看,果然是解压后目录,和安装目录很像。...但如果通过安装方式安装,直接把解压后目录移植到其他电脑是不可行,也就是说不能作为绿色软件。...于是一番把生成pyhton可执行文件也一起放到这个目录打包,成功,出坑~ 小伙伴如果感兴趣,一番也很想让小伙伴们先用起来,今天先发布一个V0.0.1版本,一番将它发布到了一番免费知识星球"一番码客

2.9K20

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

3、在安装程序运行完毕后,打开你 C:\Windows(或者 C:\WINNT)目录,然后找到 setup.iss 文件,把这个文件和你将要静默安装程序 setup.exe 保存在同一个目录。...可以使用命令行选项运行wise installation.exe,以自动执行常用任务 更多参数: /c file.wse WISE脚本创建可执行文件 /r 在 SetupCapture 窗口中打开WISE...: /T 测试模式 /X 路径名 将文件提取到路径名 /Z 路径名 将文件提取到路径名并重新启动 /S 静默安装 /M 提示输入windows、system、temp目录(/M=文件名-指定一个类似于...这类软件都会在安装结束后显示一个确认屏幕(CDex)或者一个设置文件关联方式结束安装屏幕(Winamp) 怎么判断哪个程序是使用 NSIS 技术打包?...很多用NSIS打包程序安装时候都有类似的窗口,例如 Winamp 和 CDex 。

13.6K22

NSIS 打包 Electron 生成exe安装

每次文章都从0开始 搭建开始 使用是electron-vue 毕竟方便一点 如果只想安装electron 请参见我另一个文章https://segmentfault.com/a/11......编写一个页面 使用IDE打开随便编写一个页面 使用npm 构建安装包 npm run build 安装程序制作 下载NSIS软件,安装 下载地址:https://...下载完毕打开 下一步 下一步 就行了 傻瓜式安装 NSIS新建脚本 点击软件左上角文件->选择新建脚本(向导) 到应用程序信息这里 填写应用程序名称必须和你package.json...buildwin-unpackedexe文件 选择 F:\lee\project3\build\win-unpacked 编译脚本...下载完毕之后 放到NSIS目录 VNISEdit\Plugins 目录 如果不知道目录 那就在桌面 右击VNISEdit 编译环境 选择打开所在目录 就可以看到了 在脚本最后加一句 编译完成后会后些方法

2K31

学Python真的有用,看它怎么控制你手机

好,今天旅程是这样: 介绍安装要求 初步带你入门、带你飞 介绍编写脚本基础 创建自拍计时器 创建定义搜索器 1. 安装准备工作 需要安装两件事第一件事就是是计算机上ADB工具。...如果使用是Windows,则将zip文件解压缩到一个目录,然后将此目录添加到您路径。这样一来,我们只需在终端窗口中键入scrcpy即可从系统上任何位置访问该程序。...但是,只有将其添加到路径后,此方法才能起作用,否则,可以通过将终端目录更改为安装scrcpy目录键入scrcpy.exe来打开可执行文件。...3.编写脚本基础 我们要与设备连接主要方式是使用shell,通过这种方式,我们可以发送命令以模拟特定位置触摸或A滑动到B。要模拟屏幕触摸(轻击),我们首先需要工作了解屏幕坐标的工作方式。...创建定义搜索器 现在,我们做一些更复杂事情:要求浏览器找到特定单词定义,截图以将其保存在我们计算机上。

1.4K20

OpenCV3 和 Qt5 计算机视觉:11~12

下载qt-everywhere-opensource-src-5.9.1.zip(或*.tar.xz),然后继续下一步。 将源代码提取到您选择文件。...以下是创建安装程序必需步骤: 假设您已经完成了 Qt 和 OpenCV 应用开发,则可以创建一个包含安装程序文件文件夹开始。 假设此文件夹名为deploy。...密切注意 Qt Installer 框架文档了解其脚本,以便能够创建功能更强大安装程序,这些程序可以自动将应用所有必需依赖项放置到位,是一个好主意。...在本章最后一部分,我们了解了 Qt Installer 框架,通过使用它创建了一个简单安装程序。 我们学习了如何创建使用安装程序在目标系统上提取包。...,因此您可以磁盘加载它们,或者在我们示例,可以作为资源存储在qml.qrc文件嵌入到可执行文件main.qml文件加载它们。

6.2K20

学会这些,QtIFW制作安装包不再是难题

NSIS (Nullsoft Scriptable Install System) 免费且开源安装程序制作工具,适用于Windows平台。 使用自定义脚本语言编写安装程序脚本。...这里不卖关子,就选择QtIFW,QtIFW本身就是作为Qt项目的一部分开发,框架本身使用Qt。然而,它可以用于安装所有类型应用程序,包括(但不限于)使用Qt构建应用程序。...使用IFWConfig工具创建安装程序时,会自动生成安装脚本文件;手动创建安装程序时,需要自己编写安装脚本文件。...这不包括前导目录,前导目录是根据用于存储缓存文件合适平台特定位置自动确定。用户可以覆盖安装程序设置路径。...将追加特定于平台可执行文件扩展名; MaintenanceToolIniFile 生成维护工具配置文件名; MaintenanceToolAlias 将创建到应用程序目录维护工具别名文件名。

1.5K30

1.Powershell基础入门介绍与安装升级

.zip安装过程创建注册表项: 描述: PowerShell 7.1 开始,MSI 包将创建用于存储 PowerShell 安装位置和版本注册表项。...# 如果需要与其他版本并行运行 PowerShell 7.1,请使用 ZIP 安装方法将其他版本安装到其他文件夹。...# 4.提取 ZIP 文件 # Insert the appropriate version....独立安装路径和可执行文件名 独立 PSModulePath 每个版本独立配置文件 提升了模块兼容性 新增了远程处理终结点 组策略支持 独立事件日志 操作步骤: Step 1.独立安装路径和可执行文件名...-Command : 指定PowerShell支持命令行,将路径包在单引号前面加上调用操作符,这样便于处理脚本路径包含空格。 基础示例: # -1.指定运行脚本并在执行完成后不退出。

7K20

600个常用Linux命令大全,A到Z

awk 一种用于操作数据和生成报告脚本语言 B 命令 描述 banner 用于将大写 ASCII 字符串打印到标准输出 basename 文件名中去除目录信息和后缀,即打印文件名 NAME 删除任何前导目录组件...C 命令 描述 cal 用于查看特定月份或全年日历,默认情况下,它显示当前月份日历作为输出 case 当我们不得不在单个变量上使用多个 if/elif 时,这是最好选择 cat 文件读取数据并将其内容作为输出...dos2unix 将 DOS 文本文件转换为 UNIX 格式 dosfsck 诊断 MS-DOS 文件系统问题尝试修复它们 dstat 用于系统组件(例如网络连接、IO 设备或 CPU 等)检索信息或统计信息...虚拟作业有助于延迟执行 source 用于读取和执行文件内容(通常是一组命令),在当前 shell 脚本作为参数传递 sort 用于对文件进行排序,按特定顺序排列记录 split 用于将大文件拆分成小文件...zgrep 用于给定文件搜索表达式,即使它被压缩 zip Unix 压缩和文件打包实用程序,每个文件都存储在扩展名为 .zip 单个 .zip {.zip-filename} 文件

35511

Linux命令大全,A到Z都有总结,封神之作!

当我们不得不在单个变量上使用多个 if/elif 时,这是最好选择 cat 文件读取数据并将其内容作为输出 cc 用于编译 C 语言代码创建可执行文件...格式 dosfsck 诊断 MS-DOS 文件系统问题尝试修复它们 dstat 用于系统组件...expa 将制表符转换为文件空格,当未指定文件时,它会标准输入读取 expect 此命令或脚本语言适用于需要用户输入脚本,通过提供输入来自动执行任务 export 是 bash shell...(并行合并),方法是输出由来自每个指定文件行组成行,以制表符作为分隔符分隔,到标准输出 pidof 用于找出特定运行程序进程 ID...zip Unix 压缩和文件打包实用程序,每个文件都存储在扩展名为 .zip 单个 .zip {.zip-filename} 文件

2.3K02
领券