计算机世界日报
返回首页 产品报价 实用技巧 国产软件 技术天地 站点精选

计算机世界展览会日报

  综合要闻
  企业&人.com
  产品与技术
  网络与通信
  市场与渠道
  99全文检索

CCW网站

  网络世界
  微电脑世界
  IT经理世界
  CCW展览
  信息服务中心   家用电脑世界

兄弟刊物

  电子与信息化
  今日电子
  中国新闻科技
  电子知识产权
  电子产品世界

网上专递

  Linux园地
  友情链接
  冬涛谈法
Dongtao on Law

98内容总汇



实用技巧

利 用InstallShield 5 英 文 版 开 发 纯 中 文 安 装 程 序 的 秘 密

江 苏 省 姜 堰 市 第 五 中 学 李 中 华

---- [ 编 注: 应 用 此 文 时, 应 该 注 意 一 下 软 件 版 权 的 问 题]

---- InstallShield 是 当 前 最 为 流 行 的 安 装 程 序 开 发 工 具, 其 所 生 成 的 安 装 界 面 和 安 装 过 程 已 为 大 多 数 用 户 所 熟 悉 并 接 受, 目 前 市 场 上 大 多 数 应 用 软 件 都 是 用 它 来 进 行 安 装 的。 而 且InstallShield 为 一 些 著 名 的 开 发 工 具 提 供 了 专 用 版 本, 如 InstallShield 5 for VC++、InstallShield 5 for VB、InstallShield 5 for Dehpi、InstallShield 5 for PowerBuilder 等 等, 各 个 专 用 版 本 之 间 基 本 上 没 有 太 大 的 区 别。

---- InstallShield 目 前 的 最 高 版 本 为5.0。 其 主 要 特 点 是 流 行 的 可 视 化 和Wizard( 向 导) 开 发, 并 拥 有 自 己 的 一 套 开 发 语 言。 但 是, 有 关 它 的 资 料 却 很 难 能 找 到, 市 场 上 也 没 有 有 关 它 的 书 籍。 其 开 发 环 境 为 英 文, 却 有 很 多 种 语 言 版 本 用 以 生 成 各 种 语 言 版 本 的 安 装 程 序, 主 要 是 以 几 个 文 件 来 实 现。 笔 者 手 中 的 版 本 是 与PowerBuilder 6.0 一 起 捆 绑 销 售 的InstallShield 5 for PowerBuilder 6.0 的 英 文 版 本。 在 用InstallShield 5 为PowerBuilder 应 用 程 序 制 作 安 装 盘 时 作 者 发 现 了 其 实 现 各 种 语 言 版 本 安 装 程 序 的 秘 密, 并 成 功 地 利 用 英 文 版 本 开 发 出 了 纯 中 文 的 安 装 程 序( 与《 金 山 词 霸》、《WPS 97》 的 安 装 程 序 一 模 一 样)。 笔 者 发 现 很 多 的 国 产 软 件 在 用InstallShield 制 作 安 装 程 序 时 总 不 能 完 美 地 实 现 中 文 界 面, 现 将 这 些 经 验 与 大 家 共 享, 主 要 面 向 那 些 对InstallShield 5 的 开 发 环 境 已 经 熟 悉 的 用 户。

---- 首 先 来 剖 析 一 下 其 安 装 界 面 生 成 的 秘 密。

---- InstallShield 5 将 一 些 通 用 的、 不 必 改 动 的 信 息( 如 版 权 警 告 信 息、 路 径 选 择 信 息、 换 盘 提 示 信 息 等) 做 好 并 放 在 动 态 链 接 库 文 件 中, 而 一 些 易 改 变 的 信 息 由 开 发 人 员 利 用 改 变 函 数 的 参 数 来 生 成。 因 此 对 于 那 些 放 在 动 态 链 接 库 文 件 中 的 通 用 显 示 信 息 无 法 通 过 编 程 来 控 制。 而 且, 即 便 那 些 能 够 改 变 的 信 息 是 中 文 时, 由 于 其 字 号 偏 小 显 得 相 当 难 看。

---- 实 际 上InstallShield 5 主 要 利 用 以 下 三 个 文 件 来 控 制 语 言 版 本:

		setup.exe、_setup.dll、_isres.dll。
---- 其 中,setup.exe、_setup.dll 用 于 显 示 启 动 窗 口, 即 我 们 常 见 的 准 备 安 装 向 导 窗 口。 该 窗 口 在 没 有 起 动 画 面 时 显 示 于 屏 幕 正 中 央, 否 则 显 示 于 右 下 方。 准 备 安 装 向 导 窗 口 以 后 的 信 息 全 部 是 利 用_isres.dll 来 控 制 的。

---- 现 在 您 应 该 可 以 想 到: 如 果 我 将 以 上InstallShield 5 目 录 下 相 关 子 目 录 中 的 这 三 个 文 件 换 为 中 文 版 的( 从 一 些 成 功 的 中 文 安 装 程 序 中 找), 以 后 生 成 的 安 装 程 序 不 就 变 成 中 文 版 的 吗 ? 想 法 很 对, 然 而 完 成 起 来 却 不 那 么 简 单。

---- 在 以 前 的 版 本 中, 上 述 三 个 文 件 是 与 安 装 盘 一 同 发 布 的, 很 容 易 找 到。 然 而 到 了5.0 版 本 中, 您 也 许 只 能 发 现 头 两 个 文 件, 然 而 第 三 个 关 键 文 件( 其 大 多 数 内 容 均 在 其 内) 却 怎 么 也 找 不 着。 也 许 您 有5.0 以 前 的 版 本 的 中 文 版 的_isres.dll 文 件, 将 它 拷 过 来 替 换 原 有 文 件( 位 于InstallShield 5 安 装 目 录 下 的)\Redistributable\Compressed Files\0009-English\Intel 32( 英 文 版, 其 它 相 似) 下。 再 生 成 安 装 盘 就 行 了。 但 是 早 期 版 本 的 中 文 字 号 较 小, 不 美 观。 如 何 找 到 美 观 大 方( 如WPS 97、 金 山 词 霸 Ⅲ 等) 的5.0 版 本 的 动 态 链 接 库 文 件"_isres.dll" 呢 ?

---- InstallShield 5 生 成 安 装 盘 时 将_isres.dll 与 其 它 一 些 系 统 文 件 也 进 行 了 压 缩, 压 缩 文 件 为_sys1.cab。 该CAB 文 件 与Microsoft 的CAB 格 式 不 同, 无 法 利 用 一 些 解 通 用CAB 的 软 件 打 开。 安 装 程 序 运 行 时 将 它 打 开 使 用, 使 用 一 过 立 即 神 不 知 鬼 不 觉 地 将 它 删 除。 而 且_isres.dll 由 安 装 程 序 打 开 后 被 改 得 面 目 全 非, 一 般 人 极 难 发 觉。 它 究 竟 在 哪 儿 呢 ?

---- 熟 悉InstallShield 的 人 肯 定 会 想 到 当 然 位 于Windows 目 录 下 的Temp 目 录 下。 道 理 在 于 安 装 程 序 执 行 时 会 利 用 该 目 录 生 成 临 时 文 件。 原 来InstallShield 生 成 的 安 装 程 序 启 动 即 在(Windows)\TEMP 目 录 下 创 建 类 似 于"_istmp0.dir" 的 目 录, 然 后 产 生 一 个 十 六 进 制 的 随 机 数, 再 将_isres.dll 改 为 文 件 名 为 该 随 机 数 的 一 个dll 文 件, 如:803e72.dll。 使 用 后 立 即 将 它 删 除。

---- 知 道 了 这 些 我 们 就 应 该 知 道 怎 样 获 取 这 三 个 文 件 了。 但 其 中 仍 有 些 技 巧, 笔 者 下 面 将 正 确 的 操 作 叙 述 如 下:

  1. 运 行 利 用 InstallShield 5 开 发 生 成 的 中 文 版 安 装 程 序。 如《 金 山 词 霸 Ⅲ》、《WPS 97》 等。
  2. 当 出 现 欢 迎 窗 口 时( 注 意: 这 一 点 很 关 键 ! 向 后 再 进 行 一 步 可 能 都 不 行), 迅 速 将 其 最 小 化。
  3. 到 上 述 目 录 找 到 一 个 文 件 后 缀 为dll, 文 件 名 为 一 十 六 进 制 数 的 文 件, 将 其 复 制 到 其 它 地 方。
  4. 退 出 安 装 程 序, 再 将 该 文 件 恢 复 为_isres.dll。
  5. 余 下 的 操 作 您 应 该 知 道 吧 !
---- 注:

---- setup.exe 所 在 目 录( 英 文 版 本, 下 同):(InstallShield 5)\Redistributable\Uncompressed Files\Language Independent\OS Independent

---- _setup.dll 所 在 目 录:(InstallShield 5)\Redistributable\Uncompressed Files\0009-English\OS Independent

---- _isres.dll 所 在 目 录:(InstallShield 5)\Redistributable\Compressed Files\0009-English\Intel 32

 
免 费 订 阅

实用技巧分类

Office应用
CAD
C、C++
数据库应用
Delphi
Internet应用
Java
Notes应用
操作系统应用
PowerBuilder
VB
Visual Foxpro
其他类
上周 排行榜
如 何 投 稿 ?

编者的话

在日常的工作生活中, 我们对计算机软硬件技术的应用开发肯定有许多的心得体会, 拿来和众人分享:让别人得到他们想要的,使自己找到苦苦寻觅的; 小的点点滴滴,大的工程系统,这里都需要。投稿 的关键在“技巧”二 字,知他人所不知,这样的稿件本栏最最欢迎! 大家公认的 好文章自然会有好的奖励。希望每个人 在这里都有所收获...

r2.gif (980 bytes)
  中国惠普
  3Com中国
  Motorola中国
  CA中国
  Cabletron
  Sony在中国
  西门子WinCC
  爱普生中国
  中国建设银行
  德州仪器(TI)
  问博医药


中国计算机世界出版服务公司版权所有