?? 用vb的安裝向導做出來的安裝文件太大.txt
字號:
這 是 VB的 缺 點 , 也 是 簡 單 易 學 的 代 價 。 一 般 最 簡 單 的 VB程 序 的 安 裝 盤 也 要 將 近 2M。 你 可 以 看 看 你 的 項 目 文 件 中 是 否 包 括 了 根 本 沒 有 使 用 的 控 件 , 如 果 有 從 項 目 文 件 中 刪 除 掉 。 另 外 , 如 果 你 的 程 序 是 數 據 庫 程 序 , 刪 除 掉 你 根 本 不 使 用 的 數 據 庫 格 式 , 這 也 可 以 減 小 文 件 大 小 。
<END>
解 決 VB6安 裝 程 序 過 大 的 一 個 辦 法 :
用 VB6編 譯 成 的 EXE文 件 ,運 行 時 需 要 一 個 ‘ 運 行 時 ’ 文 件 , 即 VB運 行 庫 .在 VB6里 是 MSVBVM60.DLL在 vb6里 是 MSVBVM50.DLL, vb6的 這 個 文 件 在 WIN98里 是 操 作 系 統 自 代 的 (主 持 人 注 : Win95/NT 4.0不 包 括 此 文 件 , Win2000包 括 )。 而 VB6則 沒 有 , 在 用 VB6的 “ Package & Deployment 向 導 ” 做 安 裝 程 序 時 會 自 動 打 進 去 。 以 上 這 些 都 不 是 問 題 , 麻 煩 的 是 如 果 你 在 VB中 用 了 ‘ 數 據 庫 訪 問 ’ 組 件 , 比 如 ADO和 RDS, 那 么 那 個 “ Package & Deployment 向 導 ” 會 給 你 打 入 一 個 Mdac_typ.exe文 件 在 里 面 , 這 是 一 個 自 解 壓 文 件 , 它 有 6M多 。 里 面 就 是 ‘ 數 據 庫 訪 問 ’ 組 件 所 需 要 的 DLL文 件 等 。 但 一 般 來 說 那 些 文 件 根 本 就 不 可 能 全 是 你 寫 的 程 序 都 用 到 的 。 你 可 能 只 用 到 其 中 幾 個 。 因 為 VB6支 持 很 多 數 據 訪 問 方 法 , 你 只 要 用 其 中 一 種 就 能 寫 出 一 個 很 好 的 數 據 庫 訪 問 程 序 。 所 以 說 , 如 果 你 把 那 個 Mdac_typ.exe打 入 安 裝 程 序 , 你 發 布 的 安 裝 程 序 最 少 也 得 有 6M, 而 其 中 很 多 是 你 用 不 到 的 。 ( 主 持 人 注 : Mdac_typ.exe是 針 對 ADO的 , 如 果 使 用 的 是 DAO或 RDO, 可 以 不 要 這 個 文 件 。 )
那 么 如 果 知 道 你 到 底 需 要 哪 些 文 件 呢 ? ? 我 想 出 一 個 辦 法 : 在 你 機 器 上 運 行 你 寫 的 程 序 , 然 后 用 WIN98自 代 的 那 個 ‘ 系 統 信 息 ’ 來 看 看 你 運 行 你 的 VB程 序 時 WIN98系 統 裝 入 了 哪 些 文 件 庫 。 很 簡 單 : 裝 入 了 哪 些 , 就 用 哪 些 。
下 面 是 具 體 做 法 :
1 在 WIN98里 - > 程 序 - > 附 件 - > 系 統 工 具 - > 系 統 信 息
2 然 后 打 開 ‘ 系 統 信 息 ’ 后 選 那 個 樹 形 中 的 ‘ 已 加 載 32位 模 塊 ’
現 在 你 所 看 到 的 就 是 系 統 當 前 用 到 的 DLL和 一 些 OCX文 件 , 還 會 有 一 些 EXE文 件 。 VB主 要 可 能 用 的 是 DLL和 OCX文 件 。 運 行 上 面 兩 步 時 先 不 要 啟 動 你 的 VB程 序 以 及 其 它 的 WIN98程 序 。 這 樣 我 們 得 到 的 是 一 個 最 少 的 文 庫 列 表 , 以 進 與 后 面 的 列 表 比 較 。
3 在 右 邊 的 文 件 列 表 ‘ 名 稱 ’ 里 按 SHIFT用 鼠 標 選 所 有 的 文 件 名 。 然 后 選 菜 單 的 ‘ 復 制 ’ 并 打 開 記 事 本 將 ‘ 復 制 ’ 的 信 息 粘 過 來 , 并 保 存 。 如 : first.txt
4 打 開 你 寫 的 VB程 序 ( 我 指 的 是 已 編 譯 成 EXE的 程 序 ) 并 使 用 它 的 所 有 功 能 ( 只 是 運 行 出 來 還 是 不 夠 的 , DLL文 件 是 動 態 裝 入 的 , 只 有 用 到 相 應 功 能 時 才 會 裝 入 ) , 并 且 不 要 關 你 的 程 序 。
5 現 在 回 到 ‘ 系 統 信 息 ’ 里 并 按 F5更 新 文 件 列 表 。 這 時 所 得 到 的 列 表 就 包 括 了 VB所 要 用 的 運 行 庫 。 然 后 你 要 重 做 上 面 的 第 3步 。 將 它 也 保 存 。 如 : last.txt
6 我 們 已 經 SAVE兩 個 文 件 了 , 現 在 只 要 比 較 它 們 的 不 同 就 可 以 了 。 你 可 以 打 開 那 兩 個 一 邊 一 個 很 眼 一 行 行 看 , 看 看 后 來 存 的 那 個 多 了 些 什 么 。 。 。 也 可 以 用 fc first.txt last.txt > diff.txt 來 比 。 不 過 這 樣 結 果 很 亂 。
總 之 以 上 方 法 就 是 根 據 程 序 運 行 時 裝 入 內 存 的 文 件 庫 來 確 定 , 這 個 程 序 所 必 要 的 文 件 。
<END>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -