文件路径很重要,下面所有的文件都是如图的路径,基本上所有文件,工具下载路径在底部链接
InnoSetup 是一个免费的 Windows 安装程序制作软件,用来打包各个文件的,并将它们联系起来
下载地址:官网地址
inno setup代码如下,代表着打包的整体流程,调用了各个初始化脚本
#define MyAppName "工资管理系统" #define MyAppVersion "V1.0" #define MyAppPublisher "自定义程序出版商"#define MyAppURL "http://localhost/login" ; 基本配置[Setup]; NOTE: The value of AppId uniquely identifies this application.; Do not use the same AppId value in installers for other applications.; (To generate a new GUID, click Tools | Generate GUID inside the IDE.); 单独标识,可以通过innosetup-QSP-5.6.1.exe 工具自动生成AppId={{0167D65D-549A-4BA3-B88A-4814EC5A1D35}AppName={#MyAppName}AppVersion={#MyAppVersion}AppPublisher={#MyAppPublisher}AppPublisherURL={#MyAppURL}AppSupportURL={#MyAppURL}AppUpdatesURL={#MyAppURL}; 默认安装路径DefaultDirName=D:\Afu_SalarySystemDefaultGroupName={#MyAppName}; 软件名称OutputBaseFilename=阿福家工资管理系统; 软件图标SetupIconFile=D:\afu_jjgl_InnoSetupFile\afu.ico ; 压缩方式 Compression=lzma; yes 可以使文件更小SolidCompression=yes; 必需有管理员权限才能安装PrivilegesRequired=admin; 安装密码;Password=itdragon; 开启加密,可能还需要一个dll文件;Encryption=yes ; 语言配置 [Languages]Name: "english"; MessagesFile: "compiler:Default.isl" ; 安装文件[Files]; 安装部署的源文件路径Source: "D:\afu_jjgl_InnoSetupFile\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; NOTE: Don't use "Flags: ignoreversion" on any shared system files ; 快捷键[Icons]Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}";Name: "{commondesktop}\快捷HTTP地址"; Filename: http://localhost/login;Name: "{commondesktop}\Mysql数据初始化脚本"; Filename: "{app}\mysql\init-data.bat" ;Name: "{commondesktop}\安装须知"; Filename: "{app}\安装须知.doc" ; 程序安装成功后执行脚本[Run] ;Filename: "{app}\hide_cmd.vbs"; Filename: "{app}\init-windows_dllFiles.bat"; Filename: "{app}\init-jdk.bat"; Filename: "{app}\mysql-8.0.21-winx64\bin\init-mysql.bat";Filename: "{app}\myService\init-afu.bat ";;Filename: "{app}\dll-file\dll-move.bat";
@echo offclsecho. set myjavapath=%cd%\ConfigFiles\Java\jdk-8u162-windows-x64 IF EXIST "%myjavapath%"\bin\jdk-8u162-windows-x64.exe ( echo. echo 发现已经安装java程序,注册环境变量请按任意键 echo. echo. goto SETENV ) echo. echo 正在安装jdk,请不要执行其他操作 echo. echo 请稍等,这个时间大约需要二、三分钟 echo. start /WAIT %cd%\jdk-8u162-windows-x64.exe /qn INSTALLDIR="%cd%\ConfigFiles\Java\jdk-8u162-windows-x64"echo 程序安装完毕,正在注册环境变量 echo. goto SETENV :SETENV echo::如果有的话,先删除ClASS_PATH wmic ENVIRONMENT where "name='CLASS_PATH'" delete ::创建JAVA_HOMEwmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%myjavapath%" ::创建CLASS_PATHwmic ENVIRONMENT create name="CLASS_PATH",username="<system>",VariableValue=".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;" ::在环境变量path中,剔除掉变量java_home中的字符,回显剩下的字符串call set xx=%Path%;%%%%JAVA_HOME%%%%\jre\bin;%%%%JAVA_HOME%%%%\bin ::echo %xx% ::将返回显的字符重新赋值到path中wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%xx%"echo. echo JDK环境变量设置成功 echo. echo. :END exit
复制粘贴代码,修改其中你的文件名字和路径,初始化安装jdk脚本文件名为init-jdk.bat,放在该路径下(D:\afu_jjgl_InnoSetupFile\init-jdk.bat)
tips:我下载的jdk,mysql都是免安装版本,所以目标电脑上不用设置jdk,mysql环境变量也能运行.
cd /d %~dp0 cd ..del /F %cd%\my.iniecho 删除完成echo [mysql]>> my.iniecho default-character-set=utf8>> my.iniecho [mysqld]>> my.iniecho port = 3306>> my.iniecho basedir=%cd%>> my.iniecho datadir=%cd%\data>> my.iniecho max_connections=200>> my.iniecho character-set-server=utf8>> my.iniecho default-storage-engine=INNODB>> my.iniecho wait_timeout=2147483>> my.iniecho interactive_timeout=2147483>> my.iniecho my.ini生成成功set inipath=%cd%\my.inicd bin"%cd%\mysqld.exe" -install mysql --defaults-file="%inipath%""%cd%\mysqld.exe" --initialize-insecure --user=mysql --consolenet start mysqlsc config mysql start=auto net stop mysqlnet start mysqlecho 安装完毕 "%cd%\mysqladmin.exe" -u root password 123456echo 修改密码完毕 cd .. "%cd%\bin\mysql.exe" -uroot -p123456 < "%cd%\initsql\myInitSql.sql" echo 数据库初始化完成 exit;
复制代码,将文件命名为init-mysql.bat,放在D:\afu_jjgl_InnoSetupFile\mysql-8.0.21-winx64\bin
通过navicat或者sqlyog导出sql语句,把下面代码加到你sql文件的开头:
create database IF NOT EXISTS myDatabase character set utf8;
set global character_set_database=utf8;
set global character_set_server=utf8;
USE myDatabase ;
create database IF NOT EXISTS myDatabase character set utf8;set global character_set_database=utf8;set global character_set_server=utf8;USE myDatabase ; SET FOREIGN_KEY_CHECKS=0; -- ------------------------------ Table structure for `t_handwriting_image`-- ----------------------------DROP TABLE IF EXISTS `t_handwriting_image`;CREATE TABLE `t_handwriting_image` ( `image_number` int(30) unsigned NOT NULL AUTO_INCREMENT, `user_name` varchar(30) DEFAULT NULL, `id_number` varchar(20) DEFAULT NULL, `image_type` int(10) DEFAULT NULL, `image_dimension` varchar(10) DEFAULT NULL, `image_digits` int(20) DEFAULT NULL, `image_status` int(10) DEFAULT NULL, `image` mediumblob, `department_id` int(30) DEFAULT NULL, `creat_timestamp` datetime DEFAULT NULL, PRIMARY KEY (`image_number`)) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8; -- ------------------------------ Records of t_handwriting_image-- ----------------------------
代码开头创建数据库语句的数据库名字改成你的数据库名.
创建文件夹initsql,放在mysql根目录下,
将初始化数据库sql语句命名为myInitSql.sql,放在D:\afu_jjgl_InnoSetupFile\mysql-8.0.21-winx64\initsql
用途:使用Spring Boot开发的Web项目,打包生成了一个jar包,部署在Windows服务器中,设置为开机启动
下载地址:GitHub
我使用的是winsw-v2.2.0,将Git Hub中下载的WinSW.NET4.exe和sample-minimal.xml文件及springboot项目的jar包放在同一个文件夹中
将winsw执行程序跟xml改成同样的名字
<configuration> <!--安装成Windows服务后的服务名--> <id>afuService</id> <!--显示的服务名称--> <name>afuService</name> <!--对服务的描述--> <description>阿福计件管理系统</description> <!--这里写java的路径,如何配置了环境变量直接写"java"就行--> <executable>java</executable> <!--Xmx256m 代表堆内存最大值为256MB -jar后面的是项目名--> <arguments>-Xmx256m -jar afu.jar</arguments> <!--日志模式--> <logmode>rotate</logmode> </configuration>
echo -------afuService begin--------"%cd%\afuService.exe" install afuServiceecho -------afuService install end------------------sc config afuService start= autonet start afuServiceexit
放在D:\afu_jjgl_InnoSetupFile\myService下
dll文件下载地址:文章底部链接
start /wait %cd%\windows_dllFiles.exe /q /norestartexit
放在D:\afu_jjgl_InnoSetupFile
上面全部没问题后,点击inno setup上的编译
会在同级目录下生成output文件夹里面放的就是安装包
jdk,msql我用的绿色免安装版本,所以不需要环境变量,下载链接在底部
提取码:1234
原网址: 访问
创建于: 2022-12-21 15:40:48
目录: default
标签: 无
未标明原创文章均为采集,版权归作者所有,转载无需和我联系,请注明原出处,南摩阿彌陀佛,知识,不只知道,要得到
最新评论