VB6の資産をWinXP環境からWin7環境に移行する際に必要となるタスクはどのようなものになるでしょうか?


泣きたいSE  2013-02-13 19:07:58  No: 103407  IP: [192.*.*.*]

現在お客様の現場に常駐してシステム開発を行っているものです。

このたび、OS更改を控えており、現状使用しているVB6の資産をそのまま使用する方向性
(今後あらたに開発するものは.NET)
で進めるなかで、その移行作業にかかる見積りを求められています。

・現行と次期の環境は以下になります。

1:OS Client
  WindowsXP 32bit →Windows7 32bit
2:OS Server
  Windows2000 そのまま
3:Office
  OfficeXP(2002)SP2 →Ofiice2010
4:VB
  VB6.0→VB2012(.NET Framework2.0〜4.5)
5:DB Client
  Oracle8i→Oracle10g
6:DB Server
  Oracle8i そのまま

・プログラム資産は以下になります。

A:機能数 267
 内訳
   実行体(.exe):239
   システム別共通関数:15
   PL/SQL群等:13

B:ファイル数 2377
 内訳
   フォーム(.frm):849
   標準モジュール(.bas):541
   ユーザコントロール(.ctl):9
   PL/SQL(.sql:)516
   ACCESS(.mdb):3
   EXCEL(.xls):457(マクロ含むは3のみ)
   WORD(.doc):2(VB画面から操作説明書として呼び出されるもの)

つきましては、作業として必要となるタスク、及び懸念される事項等を
ご教授頂けると助かります。

不躾な質問につき大変恐縮致しますが、ご教授頂きたく、宜しくお願い致します。

編集 削除
魔界の仮面弁士  2013-02-14 05:08:21  No: 103408  IP: [192.*.*.*]

> ・プログラム資産は以下になります。
掲示板で見積もりを出すのは無理ですね…。
移行に伴う作業については、過去ログを参考にしてみてください。


> 1:OS Client
>  WindowsXP 32bit →Windows7 32bit
・XP, Vista, 7, 8 には、OS 自体に VB6 のランタイムが含まれています。
  これは VB6SP6 以降のランタイムとなり、再頒布はできないので注意して句大。
・7 も含め、XPSP2 以降の OS ではセキュリティ上の制限が厳しくなっています。
  たとえば、C: ドライブ直下にファイルを作成しようとしたり、Program Files 上の
  ini ファイルへ書き込みすることなどは、極力避けましょう。


> 2:OS Server
>   Windows2000 そのまま
・OS の Service Pack も忘れずに。Oracle を使うなら。
http://www.oracle.com/jp/system-requirement/db-matrix-195845-ja.html
http://otndnld.oracle.co.jp/document/products/oracle10g/102/windows/B25255-04/reqs.htm#62275535


> 3:Office
>  OfficeXP(2002)SP2 →Ofiice2010
・ツールバーからリボンバーに変わることで、操作感がかなり変わります。
  旧ユーザーへは、移行に伴う操作説明の指導工数も必要になるかも知れません。
・CommandBar オブジェクトなど、一部の VBA コードで動作に差異が生じます。
・アーリーバインドによるオートメーション操作を実施している場合、
  参照設定の違いに注意してください。
・VB.NET から制御する場合は、COM(ActiveX)オブジェクトのメモリ管理が
  VB6 とは異なります。参照カウントを意識したコーディングを心がけてください。


> 4:VB
>   VB6.0→VB2012(.NET Framework2.0〜4.5)
VB2012 を採用するのであれば、対象の .NET バージョンに注意してください。

Windows 2000 が相手なら、.NET 2.0 が唯一の選択肢となります。
Windows XP が相手なら、2.0〜4 は OK ですが、4.5 は選択できません。
Windows 7 が相手なら、2.0〜4.5 のいずれもサポートされます。
http://www.atmarkit.co.jp/ait/articles/1211/16/news093.html


> 5:DB Client
>  Oracle8i→Oracle10g
> 6:DB Server
>  Oracle8i そのまま
サーバーが古いバージョン(たとえば 8.1.5.x など)の場合、
この組み合わせは NG です。10g クライアントからの
8i サーバーへ接続しようとした段階で ORA-03134 エラーになるでしょう。
(運良く接続できたとしても、未保証となります)

当方未確認ですが、DB 側が R8.1.7.4 以降であれば、10g クライアントからの
接続もサポートされていると聞いたことがあります。Patch Set などが
最新の状態になっているか調べておいてください。
http://www.doppo1.net/oracle/admin/patch.html

他にも、Unicode バージョンの違いによる文字コードがらみの問題など、
幾つかの注意点があると思うので、Oracle サポートへ確認しておきましょう。


> つきましては、作業として必要となるタスク、及び懸念される事項等を
> ご教授頂けると助かります。

> 不躾な質問につき大変恐縮致しますが、ご教授頂きたく、宜しくお願い致します。
http://www.tt.rim.or.jp/~rudyard/torii009.html
http://blogs.wankuma.com/jeanne/archive/2005/11/24/19566.aspx

編集 削除
泣きたいSE  2013-02-14 20:50:30  No: 103409  IP: [192.*.*.*]

ご助言頂き有り難うございます。
参考にさせて頂きます。

編集 削除