现在的位置: 首页Java技术 > 正文
Java打包程序—InstallSheild之InatallScript
关键词:installsheild InatallScript 打包 ┊ 来源: www.blogjava.net收藏

上次讲了InstallSheildasistant的方式,你跟着弄就打处一个包来了,验证一下是否符合你的设置,就是安装一下看看。这就不多说了。

上次的解说你可能已经迫不及待要看看Installation Designer的方式。别急。

   很多时候我们只需要照着一个简单的示例做一次成功,就能体会到达成一间事的最简单方式。所以这次改一下结构,讲解和操作分离,凡是操作的部分都写成 xx操作:”后面跟上本示例操作,xx表示步数,其实有的步是不必要的。你要亲自动手看有此标签的部分就行。有多余的需求和想了解在看具体讲解。用标签 “讲解:”表示具体讲解。

   下面开始

    1操作:打开InstallShield x 又看到起始页,如下图:

  讲解:要是没有,你就新建一个。要删除项目,通常是关闭InstallShield x,然后到ism所在的文件夹删除整个文件夹就行。


    2操作:点击TTPlay.ism打开上次建的项目,如下图:

  讲解:看到如下图,如果看到的不是,你就点一下标签页Installation Designer,看到这个界面,我们应该很高兴,面熟呀,这不和vc6.0的和相似么。其实用法、语法也很相似,红线圈住的部分是下一步操作的 


3操作:点击上图左边树状目录中红圈中的部分,看到如下图:

讲解:左边的目录也是九个,对应项目助手的九个步骤


    4操作:右击中间目录中的,看到如下图:再点击Make default,那么默认就是中文了。

  讲解:红勾就到了Chiness选项,上次的问题就解决了,再次安装是看到的就是中文了,不信可以点击编译、链接,执行试试,和vc一样,这两个图中都有,自己试试。

  点击Project Properties,可以看到,保存配置的方式是xml,其他信息都是默认配置或你在工程助手那填写的。


  所有东西到要安装,不需客户选择,那么可以如下操作

    5操作:点击左边目录的Setup Types ,看到中间目录,右击Complete选项,点击Remove删除

  讲解:你说为什么不删除Custom因为Custom里才可以让客户选择安装路径。


    6操作:点击左边目录的Files and Folders,展开中间部分下边栏中的Application Target Folder目录看到如下图

  讲解:Destination computer’s folders栏里的各目录在同上节添加文件是所看到的弹出目录含义相同,参看上节,在这儿你可以展开source computer’s folders中我的电脑,直到找到你要打包的文件夹,拖到下边栏中的Application Target Folder目录就行,也是比较浪费时间(他要搜索你的整个结构进去),和使用工程助手添加文件夹的效果相同,但显然这样感觉更方便,尤其是有多个文件夹并列时(很多时候你不想要很深的目录,公司名文件夹下、软件名文件夹才到你拖进来的文件夹,可能你的好几个文件夹都只想做公司名文件夹下的子文件夹,那么想上次讲的你可以不写软件名,然后再这多次拖动并列的这几个文件夹。)。在具体的,有少量文件变动你可以点击有文件变动的文件夹,在最右边上面的文件拖到下面的相应位置。变动比较大,建议你就吧下边栏中Application Target Folder里的文件目录都删掉再重新拖进去


    7操作:点击Shortcuts 展开中间栏的ttplay目录,展开中间栏的Desktop目录并点击TTPlayer.exe1看到如下图(这一步可以省去,只是看一眼就行,谨慎行事就在看讲解)。

  讲解:没有的话,你就自己在这儿建,相信你会需要这样建而且也很方便,没有快捷方式的话,可能你看到的只有Programs Menu 那么你就右击Programs MenuNew Folder新建文件夹(就是在开始菜单中的文件夹,一个文件夹中有可若干个选项调用不同的exe,然后对文件夹起名字(最好用你的公司名,要是改名,按F2就行了)然后右键点击这个刚建的文件夹,点击New Shortcut 新建你的快捷方式并起上名(也是弹出一个框,你找到你的exe,但名字是要自己给的)。要注意的就是起好名字后点击这个快捷方式,在最右边的wording Directory填上你的工作目录,要不产生的快捷方式找不到你的exe,如果是Desktop就填上<DesktopFolder>,如果是Start Manu就复制Target中的目录不到xxx.exe,而是它的上层目录。如<TARGETDIR>"TTPlayer"TTPlayer.exe就只复制<TARGETDIR>"TTPlayer贴到Working Directory,Display name改为你的软件名,这个名字将显示在快捷方式里,如这儿改成TTPlayer


    8操作:点击Registry,如下图(只一步也可省去)

  讲解:和Files and Folders一样,中间一栏上面是本机的,下面是对应的,要注册什么在本机上新建了,拖到下面就行了,也都点右键新建同名文件夹直到最下层,拖动你刚建的名值对就完了。


  讲解:
Server Configuration中的两项是iisSQL Server2000,我们都不用,也都很简单。跳过。

    9操作:点击InstallScript 看到如下图


  讲解
:这是重点,这里可以添加代码来修改环境变量、添加验证、添加调用等。这儿只会讲到添加环境变量,添加调用会在讲开源软件是讲。具体语法讲解只有InstallSheild 5的,从哪个网站下,忘了,刚搜了一下,感觉这个网站应该能下:http://cio.ccw.com.cn/qtzl/htm2008/20081018_523911.shtml 不行你就到google 输入installshield 丁有和”。

  复制其中的部分代码如下:

Dlg_Start:

    nResult = 0;

Dlg_SdWelcome:

    szTitle = "";

    szMsg = "";

    //{{IS_SCRIPT_TAG(Dlg_SdWelcome)

    nResult = SdWelcome( szTitle, szMsg );

    //}}IS_SCRIPT_TAG(Dlg_SdWelcome)

    if (nResult = BACK) goto Dlg_Start;

Dlg_SdLicense2:

  很显示它的语法挺简单,大致你也能猜到,这儿是三个对话框,都是用标签的方式,说明我们要跳来跳去,不错,if (nResult = BACK) goto Dlg_Start;就是通过一个判断调回上一个对话框。Dlg_Start即开始对话框,Dlg_SdWelcome即欢迎对话框。nResultszTitle等都是变量,并非弱类型的变量,前边有定义。

废话不多说,我们要加上一个环境变量,

    10操作:对着有代码那一栏拖动滚动条到最下面看到最后一个end为止,在它的下一行粘贴如下代码:

function OnEnd()      

string mypath, szKey, szEnv;        

POINTER pEnv;  

begin                

 mypath=TARGETDIR;     

 szKey="Environment";  

 RegDBSetDefaultRoot(HKEY_CURRENT_USER);     

 RegDBSetKeyValueEx(szKey,"mypath",REGDB_STRING,mypath,-1);  

 szEnv = "Environment";  

 pEnv = &szEnv;  

 SendMessage (0xffff, 0x001A , 0, pEnv );  

 // MessageBox("设置了环境变量mypath ",0);

end;

  讲解:要调用函数就的在那些对话框中找个位置插入这个函数,这儿就找“Dlg_SetupType2:”标签

    11操作: 找到“Dlg_SetupType2:”标签,在其后新加一行 OnEnd();

讲解:此时应该点一下Complile,编译一下(和用vc一样来使用),若有错会和vc一样在下面报出,双击错误到出错行,如果你是复制代码过去的,很可能是字符编码不一致的问题。特别是中文和空格,那么去掉每行前面的空格可能就去了大部分的错误,有中文的行最好去了,自己再敲一次,实在不好解决的就全去了再全部敲一遍。

  注释方式和c,java的一样,这儿把后面那个注释去了,运行到那时就会那个弹出对话框。内部函数查帮助,语法和常用函数看我刚才介绍下载的讲解。

  这里边还有调试运行,好像不能加断点,全都是从头至尾的走。但同样有跳出函数,停止调试等常规操作。

    12操作:点击Dialogs(可以省去),看到如下图:


  讲解:在
Skin里有多种风格的皮肤,通过右键点击来选取。All Dialogs里有从开始安装到结束安装的各种可能用上的对话框,通过双击可以在这里改变这些对话框的结构。当然标志installshied可不好去,最好也别去,谁叫你用人家的产品。这些对话框的引用可以在前面的InstallScript代码来引用。如Welcome对话框就用“Dlg_SdWelcome:”标签来引用。

    13操作:点击编译。(与vc一样)

  讲解:ok,本次操作结束。到你创建的目录下就能找到setup.exe点击安装试试,或者点InstallSheild x里的运行。也行。


  如果加了环境变量,就能找到,如我这儿添加了
mypath= C:"Program Files"JoinusRip,看看你的。有问题提问。

  这次一个13个操作(可能还不要或者更多一点)你就用InstallSheild x打包好一个软件,不到两分钟。你可能急了,说我只帮你解决了添加环境变量的问题,你还有很多要求,要求调用其他软件先安装呀什么的。其实大部分情况这些已经差不多了。你的问题也许可以换种方式,要不你自己正是很不轻松,尽管你及其勤奋。要先安装其他软件,你可以通过选择安装对话框加说明让用户先安装你要求的。这种对话框你可以通过另外的打包软件处理,要不去记InstallSheild的一堆语法,不一定吃得消。我也不敢讲一堆,更主要的原因是,这可不是免费的软件,你用了说不定哪天律师就来找你了,所有你仅仅体验一下明白打包的一个大体过程就可以了,学问有相似之处,再学其他的也就不那么难了。除非你公司买了InstallSheild,否则你就先把它扔一边吧,我们有更好的开源软件,虽然一下子讲不到最好的。

  提醒一下,如果你运行了刚打好的包,或打开了包所在的文件夹,此时编译会过不去,总提醒一个错误,还有InstallSheild x有很多bug,不行了,你就删除从来。有人翻译了InstallSheild2008的部分,当然帮助没翻译,你可以下来看看都什么意思,但想使用好像不是很现实。当然要学好就得看英文的,很多人都习惯了看英文的帮助,但一下子要看明白并操作许多也还是花点时间的。另外所有的部分都是用例子来讲,不会面面俱到,要深入必须再花时间看帮助,相信有了例子,再看帮助的时候理解的就多了。

  下次进入开源,最简单的jsmooth,中文版翻译是刘长炯,这次我惨了。希望他没写相关的,要不撞车了。

本文由 jack 发布于 2384天 2小时 33分钟前,目前已有 2633 人浏览
欢迎大家转载分享,请注明来源及链接;商业媒体转载请获得授权,谢谢合作!
 

添加评论