installshield java_使用InstallShield打包java程序exe以及jdk,安装完成自动运行
大家都知道java生成的exe如果没有jre是无法运行的,如果客户自己安装setup.exe以后自己配置java环境,那客户一定会骂你这个软件怎么这么差,呵呵。所以我今天要说的使用InstallShield打包将java exe jdk(或jre)一起打包安装,安装完成自动执行EXE.至于如何打包exe请参考我前面写的:http://suiyuan0808.iteye.com/blog/852231.我把我之前做的打包代码拷贝出来供大家参考。这段代码需要写到InstallShield工程的Setup.Rul里面去。下面语言有点像vb语言
/*
*author:Ldfu
*/
#include "ifx.h"
//开始安装时候会自动检查jdk环境并安装
function OnBegin()
begin
Disable (BACKBUTTON);
if(!MAINTENANCE)then
SdLicense2 ("License ", "", "", SUPPORTDIR ^ "sn.txt", FALSE);
endif ;
//如果大家的jdk和我的不一样请修改红色粗体部分即可。
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
//这里意思在注册表里面没有找到jdk注册信息,则安装jdk
if (RegDBKeyExist ("SOFTWARE\\JavaSoft\\Java Development Kit\\1.6.0_04") < 0) then
if(LaunchAppAndWait (SUPPORTDIR^"jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe","", LAAW_OPTION_WAIT)<0)then
MessageBox ("您的系统没有安装JDK 1.6.0_04 t! ", INFORMATION);
endif;
endif;
end;
//安装结束之前,设置java_home环境变量
function OnEnd()
STRING szFeatureName;
STRING serviceTarget;
STRING szDocFile;
STRING szKey;
NUMBER nvType;
STRING svValue;
NUMBER nvSize;
begin
//检查是否已经安装jdk
szKey = "SOFTWARE\\JavaSoft\\Java Development Kit\\1.6.0_10";
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
//如果已经安装则设置环境变量 java_home
if (RegDBKeyExist(szKey)=1) then//如果该注册表值存在
if(RegDBGetKeyValueEx(szKey,"JavaHome",nvType,svValue,nvSize)=0) then
szKey = "SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment";
if(RegDBSetKeyValueEx(szKey, "JAVA_HOME", REGDB_STRING, svValue, -1)<0) then
MessageBox ("Javahome create failed, please set it manually!", SEVERE);
endif;
endif;
endif;
//最后启动您的exe文件
szFeatureName="main";
serviceTarget=TARGETDIR^"wangdianzhushou.exe";
if (FeatureIsItemSelected(MEDIA, szFeatureName)=1) then
if(FindFile(TARGETDIR, " wangdianzhushou.exe ", szDocFile)=0) then
if (LaunchApp (serviceTarget, "") < 0) then
MessageBox ("无法启动程序 "+serviceTarget+".", SEVERE);
endif;
endif;
endif;
end;
installshield java_使用InstallShield打包java程序exe以及jdk,安装完成自动运行相关推荐
- 打包java程序生成exe
打包java程序生成exe 目标 我们知道c++的控制台程序编译运行以后就会生成一个exe可执行文件,在电脑上可以直接双击运行,但是java是跨平台的语言,编译运行以后的字节码文件.class是和平台 ...
- 图片资源加载路径分析以及netbeans打包java程序,并包含图片资源
1. 首先说说如何将图片导入程序中 图片放在images文件夹下,该文件夹放在不同地方,程序中有不同的加载方法. (1)images/test.png放在了src下,则程序中加载的路径为:new I ...
- java项目运行在浏览器_在 Java 程序中,能在 WWW 浏览器上运行的是 程序。_学小易找答案...
[简答题]已知:如图, AD 是△ ABC 的角平分线, DE//AC, 交 AB 于点 E , DF//AB ,交 AC 于点 F ,求证: AD ⊥ EF. [简答题]Java语言具有较好的安全性 ...
- java菜鸟1:jdk 安装
一.什么是JDK http://java-mzd.iteye.com/blog/838514 JDK : Java Development ToolKit(Java开发工具包).JDK是整个J ...
- 利用PHP安装windows自动运行的服务,PHP程序可以实现长时间、自动运行、定时更新功能,直接可以用在项目中的类源代码...
为什么80%的码农都做不了架构师?>>> 什么 windows服务 ? Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的 Windows 会话中可长时间运 ...
- Java SE Development Kit (JDK) 安装
Java SE Development Kit (JDK) 安装 java jdk \ jre 这两个文件最好放在一个文件夹下 安装完成后 环境变量添加 系统变量中会有javapath(没有自己添加) ...
- Java调用python打包的程序.exe,包括获取exec()中打印的日志,亲测有效
python写了一个方法,windows平台上怎么被Java服务调用呢? 最简单的办法,python利用pyinstaller打包成.exe程序,Java程序通过Process调用,想同时获取.exe ...
- 教你打包Java程序,jar转exe随处可跑
本文出自One Coder博客,转载请务必注明出处:http://www.coderli.com/archives/runnablejar-to-exe/ 发现很多人问如何把Jar转成exe程序.可能 ...
- eclipse中的java包awt_Eclipse中打包java程序
Java应用程序可以脱离Eclipse运行,但在运行之前要把应用程序打成一个JAR包,Eclipse下打包的方式方法和标准的AWT/SWUNG程序基本一样,主要有以下几点: a.MANIFEST.MF ...
- 利用InstallAnywhere 打包java程序
InstallAnywhere 的使用跟其他应用程序差不多, 最有可能出现问题的是带 jre 的 java 程序打包. 先简要介InstallAnywhere 的操作步骤: 运行程序 -> 创建 ...
最新文章
- xp装linux一键安装教程图解,XP下硬盘安装CentOS 6.0图解教程
- Qt QML模块提供的重要C ++类
- 服务器配置文件salt,saltstack 配置文件详解
- 涨跌因子计算器下载哪里下载_小白计算器软件下载-小白计算器app下载 v1.0 安卓版...
- PHP环境,放置系统盘的文件
- (HY000): Cannot modify @@session.sql_log_bin inside a transaction
- CSS之深入理解 flex 布局以及计算
- 链接选项 rpath 的原理和应用
- 玩转 Springboot 2 之热部署(DevTools)
- java doprivileged_【转】关于AccessController.doPrivileged
- Linux系统下文件与目录操作
- Linformer 拍了拍 被吊打 Transformers 的后浪们
- api php usdt 以太坊_以太坊PHP离线交易开发包
- 一句话菜刀 php eval,如何基于菜刀PHP一句话实现单个文件批量上传?
- MSP430系列教程(一) 开发环境搭建(IAR for MSP430 v7.10.1)
- 计算机网络——应用层
- 欢迎使用CSDN-markdown编辑器11345
- SeaweedFS 分布式 上传、下载、删除附件公共接口
- 调频广播信号覆盖质量智能监测系统
- 文件上传--单个或多个文件上传
热门文章
- jquery仿钉钉流程图制作。
- 【计算机网络】常见面试题总结
- 笔记1-P2P后台管理系统
- 星期几计算函数参考 周几计算 礼拜几计算函数 C语言 C++函数参考 用公式计算 通用函数 Linux开发函数 Windows开发函数参考
- MacOS获取辅助功能权限控制鼠标点击事件
- poi word设置页眉图片,控制首页不同
- 查看SqlServer数据库上面脚本修改信息以及修改日志
- php链路追踪molten
- 量化研究-恐慌和贪婪指数
- java设置手机后台进程限制_当应用程序在Android Pie上受到后台限制时启动前台服务...