`

InstallShield:"错误提示对话框"显示异常

阅读更多

概要: 同时运行两个安装提实例, 错误提示对话框显示不正.

 

详细描述如下:

组里使用 InstallShield 10.5 为我们的 Java 项目制作安装器 ( 实质是一个 jar),

发现一个bug,同时运行两个安装器实例时 , 会弹出错误对话框 .

而这个对话框显示异常 , 只有一个确认按钮 , title info message 的内容均为空白 .

 

很显然 , InstallShield 需要一个字符串 , 而这个字符串是我们可以配置的 ( 这一点是我十分相信 InstallShield ).

但遗憾的是 , 这个问题的答案我们都没有 google , 包括英文关键字在内,

于是我的解体思路就是到 Install 里面找这个字符串 , 找使用这个字符串的函数 , 找使用这个字符串的事件 .

 

而我的另一个同事 Liu 同学 , 则使用了完全不同的方法 , InstallShield Jar 文件反编译 , 很High的开始了 Debug 之旅 . 而没多久 , 便找到了这个字符串 :VPDInUse.

 

解决问题之后,总结了一下,真实的问题是这样的 :

InstallShield 在第一次安装的时候便会对下面文件夹中的内容加锁 :

C:\Program Files\Common Files\InstallShield\Universal\common\Gen1\_vpddb

包括下面文件 : vpd.data,vpd.properties,vpd.script

 

而第二个安装实例运行时 , 找不到这个锁 , 于是便弹出错误对话框提示 , 而这个对话框中使用的字符串是 VPDInUse. 在StringTable中设置该字符串的相应值即可.

 

总结:

反编译这一招很好, 用我们熟悉的东西(Java), 去解决我们不熟悉领域的问题(InstallShield).

这正是扬长避短, 需要发扬.

 

分享到:
评论

相关推荐

    InstallShield自定义对话框浅谈

    - 特殊提示:当需要告知用户一些特别的注意事项或条款时,可以通过自定义对话框呈现这些信息。 - 定制安装选项:根据用户的偏好,提供自定义的安装路径、组件选择等选项。 - 错误处理:在遇到问题时,自定义...

    InstallShield自定义对话框

    【InstallShield自定义对话框】是指在使用InstallShield软件创建安装程序时,通过添加和定制自己的对话框界面,以满足特定的安装需求。InstallShield是一款流行的安装打包工具,允许开发者自定义安装过程中的用户...

    InstallShield自定义对话框使用IP控件

    InstallShield是一款强大的安装制作工具,它允许用户在安装程序中添加自定义对话框,以满足特定需求。本文将深入探讨如何在InstallShield中使用IP控件来创建自定义对话框。 首先,了解InstallShield的基础。...

    06InstallShield内部库函数全集六-自定义对话框函数(中文版).pdf

    《InstallShield内部库函数全集六-自定义对话框函数》是关于软件安装脚本编程的重要参考资料,主要涉及如何在InstallShield中创建和操作自定义对话框。对话框是用户界面的重要组成部分,允许用户与安装程序进行交互...

    05InstallShield内部库函数全集五-Sd对话框函数(中文版)借鉴.pdf

    《InstallShield内部库函数全集五-Sd对话框函数详解》 InstallShield是一款知名的安装制作工具,它提供了丰富的内部库函数,便于开发者自定义安装过程中的交互界面。本篇主要聚焦于Sd对话框函数,这些函数使得创建...

    Installshield 打包过程常见问题

    InstallShield 打包过程常见问题解决方案 InstallShield 是一个功能强大且广泛应用的安装包创建工具,然而,在使用 InstallShield 创建安装包时,经常会遇到一些问题,影响安装包的质量和用户体验。以下是 ...

    Installshield 脚本:检查安装环境

    如果不满足,则显示错误消息并终止安装过程。 2. **32位/16位安装模式检查**:通过调用`GetSystemInfo`函数获取系统信息,并根据结果判断是否为32位或16位安装模式。这对于确保安装程序能够正确处理不同架构的系统...

    InstallshieldX安装制作杂记(实例之自定义对话框)

    3. 错误处理:为可能出现的错误情况编写适当的错误处理代码,确保即使在异常情况下也能给用户提供清晰的反馈。 综上所述,通过InstallshieldX的自定义对话框功能,开发者可以极大地提升安装程序的用户体验。熟练...

    InstallShield相关资料

    1. 用户界面设计:InstallShield允许开发者自定义安装过程中的用户界面,包括对话框、进度条、提示信息等。通过自定义对话框,可以提供更友好的用户体验,增强品牌形象。 2. 对话框控件:InstallShield提供了多种...

    Installshield 脚本:安装脚本集合

    Installshield 脚本:CheckRequirements.txt 附加数据库.txt 禁用uac.txt 输入用户名密码.txt 卸载杀死进程.txt IISConfig.rul(配置IIS的脚本) Asp.net Version.txt(获取asp.net的版本这个难找哦) IIS安装.rar...

    InstallShield 破解

    、Application Information:程序信息......7、Installation Interview: 简单的对话框选择... 8 8、Installation Localization: 安装包界面语言的选择... 9 9、Build Installation选择安装包的格式... 9

    Installshield使用详解,使用大全

    - **定制对话框**:通过Project Wizard中的对话框选项自定义安装过程中的提示信息。 - **多语言支持**:利用Installshield提供的多语言支持功能,确保安装程序能够适应不同地区的用户需求。 - **优化脚本**:合理...

    InstallShield 2015 LimitedEdition

    - **Q1**: 如何解决安装过程中遇到的错误提示? - **A**: 首先检查是否遵循了所有最佳实践指南;其次,利用调试工具定位具体原因并修复。 - **Q2**: InstallShield 2015 Limited Edition 是否支持 64 位操作系统...

    installshield 函数大全(中文)

    用户界面函数主要用于定制安装过程中的用户交互体验,如自定义错误信息、控制按钮显示状态等。下面详细介绍其中一种典型的用户界面函数——`Disable`函数。 **2.1 Disable函数** - **语法**:`Disable(nConstant)`...

Global site tag (gtag.js) - Google Analytics