# AutoCADDotNetLibrary.Installer **Repository Path**: wmggy/AutoCADDotNetLibrary.Installer ## Basic Information - **Project Name**: AutoCADDotNetLibrary.Installer - **Description**: 提供AutoCAD二次开发,使用Inno Setup工具,快速打包的ISS脚本。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 3 - **Created**: 2024-02-18 - **Last Updated**: 2025-06-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: autocad, AutoCADDotNetLibrary, AutoCAD二次开发, cad ## README # AutoCADDotNetLibrary.Installer [![NuGet Version](https://img.shields.io/nuget/v/AutoCADDotNetLibrary.Installer?color=blue) ](https://www.nuget.org/packages/AutoCADDotNetLibrary.Installer/) ![NuGet Downloads](https://img.shields.io/nuget/dt/AutoCADDotNetLibrary.Installer) ![Static Badge](https://img.shields.io/badge/IDE-Visual%20Studio%202022-blue) [![Static Badge](https://img.shields.io/badge/Tools.InnoSetup-v6.2.2-blue) ](https://www.nuget.org/packages/Tools.InnoSetup/6.2.2) 提供`AutoCAD`二次开发,使用[Inno Setup](https://jrsoftware.org/isinfo.php)工具,快速打包的`ISS`脚本。 ## 快速使用 在`nuget`上搜索并安装`AutoCADDotNetLibrary.Installer`即可使用。 ```xml net472 true ``` 运行`Visual Studio`的`重新生成`时,会执行下面的功能: - 在项目目录下,如果没有则创建`AutoCADDotNetLibrary.Installer`文件夹,并提供`main.iss`脚本等**预设文件**。 - 在清理时,根据`IsUseInnoSetup`和`IsCleanALLContent`,是否删除程序输出目录下的`所有文件`。 - 根据`IsUseInnoSetup`,利用[Tools.InnoSetup 6.2.2](https://www.nuget.org/packages/Tools.InnoSetup)的`ISCC.exe`执行提供的`main.iss`脚本,程序编译后,直接打包成可执行的安装文件。 ## 属性 | 属性 | 说明 | 默认值 | | ------------------- | -------------------------------------------- | ------------------------------------------------------------------------------------------------------ | | `IsUseInnoSetup` | 是否使用`InnoSetup`制作安装程序。 | `false` | | `CopyISSFileDir` | `nuget`包中的预设文件复制位置。 | `$(ProjectDir)AutoCADDotNetLibrary.Installer\` | | `MainISS` | 脚本的入口。 | `main.iss` | | `ISSParameter` | `ISCC.exe`的参数。 | `/DAutoCADProgramPath="$(TargetPath)" /DAutoCADProjectOutputDir="$(TargetDir)..\"` | | `IsCleanALLContent` | 清理时,是否删除程序输出目录下的`所有文件`。 | true | > $(TargetPath)等的[相关资料地址](https://learn.microsoft.com/zh-cn/visualstudio/ide/reference/pre-build-event-post-build-event-command-line-dialog-box?view=vs-2022)。 ## 功能 程序初始化时,不用任何更改,即可运行成功。 博主已经提供了较好的参数设置和注释信息,少量更改[parameter.iss](./test/AutoCADDotNetLibrary.Installer.单项目/AutoCADDotNetLibrary.Installer/parameter.iss)和[main.iss](./test/AutoCADDotNetLibrary.Installer.单项目/AutoCADDotNetLibrary.Installer/main.iss),即可适应一般性的项目需求。 ### 预设文件 此文件是独立的内容,可以双击[单插件测试.bat](./test/AutoCADDotNetLibrary.Installer.InnoSetup/单插件测试.bat)去独立运行。 ``` - ChineseSimplified.isl - license.txt - main.iss ;程序入口,提供一些基础的设置。 - ndp472-kb4054531-web.exe ;net472的web运行时,提供程序运行环境。 - parameter.iss ;通用参数,需要根据业务进行修改。 - SelectAutoCADVersionView.iss ;AutoCAD 版本选择框。 - 图标.ico ``` #### parameter.iss [parameter.iss](./test/AutoCADDotNetLibrary.Installer.单项目/AutoCADDotNetLibrary.Installer/parameter.iss)功能:所有的配制参数都集中在这里。 #### main.iss [main.iss](./test/AutoCADDotNetLibrary.Installer.单项目/AutoCADDotNetLibrary.Installer/main.iss)功能:基础的参数设置。 #### SelectAutoCADVersionView.iss [SelectAutoCADVersionView.iss](./test/AutoCADDotNetLibrary.Installer.单项目/AutoCADDotNetLibrary.Installer/SelectAutoCADVersionView.iss)功能:AutoCAD 版本选择框,此脚本安装时写入[注册表](https://help.autodesk.com/view/OARX/2019/CHS/?guid=GUID-70D60274-57E0-4B22-8D0C-3C7F212A7CAF)信息。 ![SelectAutoCADVersionView](/docs/img/SelectAutoCADVersionView.png) 根据`AutoCADProgramMinVersion`,`AutoCADProgramMaxVersion`范围和用户已安装的 AutoCAD 版本显示 UI 界面。安装时,先删除之前安装的旧注册表信息,然后根据用户选择的安装版本写入注册表信息。此功能只影响注册表。 #### 多插件程序参数 [多插件程序 parameter.iss](./test/AutoCADDotNetLibrary.Installer.InnoSetup/多插件程序parameter.iss)允许安装程序中有多个插件程序,请查看测试示例,可以双击[多插件测试.bat](./test/AutoCADDotNetLibrary.Installer.InnoSetup/多插件测试.bat)去运行。 ## QQ 群 ![QQ群](/docs/img/AutoCADDotNetLibrary%E7%BE%A4%E4%BA%8C%E7%BB%B4%E7%A0%81.png)