随笔 - 9  文章 - 0  评论 - 93  阅读 - 23575

InstallShield 部署安装包整理(3)

InstallShield 调用批处理部署MySql数据库

说明:InstallShield版本: 2010

需求:自动部署mysql数据库

实现方法:先给客气机安装mysql的ODBC,以便测试客户输入的用户名密码正确,调用批处理自动部署数据库

  由于用ODBC执行mysql脚本导入数据时中文为乱码,这个一直没解决,所以没办法只有想到调用批处理实现Mysql自动部署了!导入需要三个文件,从MySql安装根目录下的Mysql.exe,和你自己的写的导入数据的批处理,要导入的sql脚本文件。

一.InstallShield调用外部mysql odbc msi安装包实现mysql odbc部署

1>在Behavior and Logic->Support Files/Billboards

  Support Files->Language Independent下添加要调用的外部msi文件

   在OnBegin事件里添加代码判断mysql odbc是否存在并安装mysql的odbc。

复制代码
szKey="\\SOFTWARE\\ODBC\\ODBCINST.INI\\MySQL ODBC 3.51 Driver";

  nResult
=RegDBKeyExist(szKey);

  
if(nResult<0) then

  szParam
="/i "+SUPPORTDIR^"MyODBC.msi"+" /qb";

  
if(LaunchAppAndWait("msiexec.exe",szParam,WAIT)<0) then

  MessageBox(
"Mysql ODBC Install failed!",INFORMATION);

  endif;

  endif;
复制代码

二.InstallShield调用外部程序

  1>在Behavior and Logic->Support Files/Billboards

  Support Files->Language Independent下添加要调用的外部可执行文件

  此处为执行安装数据库的批处理文件

  2>在setup.rul脚本文件的OnSQLLogin的事件后面添加代码向批处理

  传递服务器IP,用户名,数据库密码这三个参数

复制代码
if( bNext ) then
//此处添加安装数据库代码
szParam
= szServer+" "+szUser+" "+szPassword;
//MessageBox(szParam,MB_OK);
LaunchAppAndWait(SUPPORTDIR
^"bat.bat",szParam,WAIT);
return NEXT;
else
return BACK;
endif;
复制代码

  这样当用户在安装时的数据库登陆界面里点击下一步时便执行此处的代码安装数据库实现mysql数据库的自动部署。

posted on   3EF  阅读(1109)  评论(4编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
< 2011年5月 >
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 1 2 3 4
5 6 7 8 9 10 11

点击右上角即可分享
微信分享提示