installshield 打包的问题

yeak_chan 2008-05-14 03:17:15
用installshield 2008部署第三方安装包怎么实现?
比如我要打包chan.exe必须先安装聊天工具qq(qqSetUp.exe)怎么实现,我用脚本函数LaunchAppAndWait 实现不了,请高手指点,最好详细点。
...全文
98 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Elvis_chen 2011-10-28
  • 打赏
  • 举报
回复
我要打包多个安装文件,就是客户在安装时可以选择安装那一部分,就像我们安装Office时一样,可以选择想要安装的功能。不知道在那个步骤操作。
yule17 2011-02-20
  • 打赏
  • 举报
回复
有没有这个InstallShield2008 详细视频图文教程 给我传一下 邮箱lijunjie2068@sina.com
家鸣 2008-05-18
  • 打赏
  • 举报
回复
不知你的DLL是什么性质的,如果仅是在安装时用到,那么放在qqSetUp.exe相同的目录就可。
如:调用Test.dll的HelloWord。

根据你DLL的定义先声明:
prototype cdecl Test.HelloWord(BYREF STRING);
调用:
if UseDLL(szDLLName) >= 0 then//载入DLL
HelloWord("DLL Test");
if UnUseDLL(szDLLName) < 0 then//卸载DLL
MessageBox("ERROR: Could not unload [" +szDLLName+"].", SEVERE);
endif;
else
MessageBox("ERROR: Could not load [" + szDLLName +"].", SEVERE);
endif;
yeak_chan 2008-05-18
  • 打赏
  • 举报
回复
大康,谢谢你,现在能加载qq.exe了,但是我还有个问题要解决,如果qqSetUp.exe的安装需要其他的dll,我该把这些dll文件放在哪里呢?或者我怎么才能写脚本在安装qq.exe的时候调用这些dll呢?
czk598478 2008-05-17
  • 打赏
  • 举报
回复
关注你这个问题,不过自己不晓得怎么实现!

友情up
qiri07 2008-05-17
  • 打赏
  • 举报
回复
关注
wolf_life 2008-05-17
  • 打赏
  • 举报
回复
关注
家鸣 2008-05-17
  • 打赏
  • 举报
回复
先把qqSetUp.exe放在Support Files的Language Independent下,然后在安装脚本中找到临时目录,在该目录下搜索qqSetUp.exe文件。
如:
GetEnvVar("TEMP", tempdir);//得到临时目录
FindAllFiles ( tempdir, "qqSetUp.exe" , tempdir, CONTINUE );//在临时目录下搜索qqSetUp.exe文件
SdShowMsg ("qqSetUp is being installed ...", TRUE);
LaunchAppAndWait(tempdir, "" ,LAAW_OPTION_WAIT|LAAW_OPTION_HIDDEN);
SdShowMsg ("", FALSE);
...
baihe_591 2008-05-17
  • 打赏
  • 举报
回复
请参考,

http://blog.csdn.net/baihe_591/archive/2008/04/14/2291915.aspx

2.安装时提示安装.NET2.0。选择Installation Designer- - - >Support Files/Billboards- - - >Language Independent.在右边工作区中点右键选Insert Files Ins 将dotnetfx.exe加入,然后在Install Script的Dlg_SdFeatureTree:中修改代码:

Dlg_SdFeatureTree:
if ((nResult = BACK) && (nSetupType != CUSTOM)) goto Dlg_SdAskDestPath;
szTitle = "";
szMsg = "";
szFeatures = "";
nLevel = 2;
if (nSetupType = CUSTOM) then
//{{IS_SCRIPT_TAG(Dlg_SdFeatureTree)
nResult = SdFeatureTree( szTitle, szMsg, TARGETDIR, szFeatures, nLevel );
//}}IS_SCRIPT_TAG(Dlg_SdFeatureTree)
if (nResult = BACK) goto Dlg_SdAskDestPath;
endif;
MessageBox ("接下来系统将安装.NET2.0,如果系统在安装的过程中提示已经安装则取消即可。", INFORMATION);
szJDK = SUPPORTDIR ^ "dotnetfx.exe";
if (LaunchAppAndWait (szJDK, "", WAIT) < 0) then
MessageBox ("不能加载程序 .NET2.0。",SEVERE);
endif;
changjiangzhibin 2008-05-17
  • 打赏
  • 举报
回复
友情UP,用的不是很熟练
周公 2008-05-17
  • 打赏
  • 举报
回复
帮你顶,我最近也在学习installshield,不过我用的版本是installshield12。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧