本文へ移動
VB6 / Classic ASP → .NET

VB6・Classic ASP マイグレーションサービス

ツール支援型リライトで、作り直さずに .NET へ。
VB6 は C# / Windows Forms(.NET 10)へ、Classic ASP は ASP.NET へ。

Powered by gmStudio(Great Migrations)

2027年頃(予定)

期限は、もう見えている

Microsoft は VBScript を 2027年頃に既定で無効化し、将来は Windows から削除する方針を示しています。VBScript は Classic ASP の実行基盤そのものです。

IDE サポート終了から 18 年

「動く」と「直せる」は別の話

VB6 ランタイムは Windows 11 でもサポート対象ですが、開発環境(IDE)のサポートは 2008年4月に終了。改修できる環境と人が先に失われます。

30社 50システム

国内での移行実績

物流管理・債権管理・EDI・販売管理・受注管理・基幹系バッチなど、業務の中核を担うシステムを移行してきました(VB6・Classic ASP の合計)。

Facts

VB6 のサポート状況 ― 事実の整理

サポート対象

VB6 ランタイム

Windows 11 / 10、Windows Server 2025〜2008 R2 まで、OS のライフサイクルに準じてサポート。

2008年4月 終了

VB6 開発環境(IDE)

どの Windows でもサポート対象外。Microsoft は VB6 アプリを最新技術で置き換えることを強く推奨しています。

32bit のみ

32bit / 64bit

64bit Windows では WOW64 上で動作し、64bit ネイティブにはなりません。

製品により異なる

付属の OCX / DLL

mscomctl.ocx などはアプリ側で配布が必要。threed32.ocx・spin32.ocx などはサポート対象外です。

出典:Microsoft「Support Statement for Visual Basic 6.0 on Windows」(Microsoft Learn)

よくある誤解と、実際のところ

「VB6 アプリは、もう Windows 11 では動かない」

ランタイムは Windows 11 / Server 2025 でもサポート対象です。「動かなくなるから移行」という理由づけは成り立ちません。

「ランタイムがサポートされているから、当面は安心」

サポートされるのは「実行」だけ。IDE は 2008年に終了しており、改修・再ビルドを支える環境はありません。

「移行するなら、設計書から作り直すしかない」

変換ツールで現行ソースを C# に置き換えれば、現行仕様のまま移行できます。設計書の最新化は必須ではありません。

「ある日突然、すべてが止まる」

実際には OCX・DB ドライバ・32bit 制約・技術者など「周辺」から一つずつ行き詰まります。

Why now

VB6・Classic ASP を取り巻く期限

  • 2025年10月Windows 10 サポート終了 ― クライアント側の前提が変わる
  • 2026年7月SQL Server 2016 拡張サポート終了 ― DB 側の更新が先行して必要になるケース
  • 2026年10月Windows 10 法人向け ESU 1年目 終了 ― 延長するほど端末あたりの費用は毎年倍増
  • 2026年11月.NET 8 / .NET 9 サポート終了 ― 移行先は LTS の .NET 10 を選定
  • 2027年1月Windows Server 2016 サポート終了 ― ASP 実行環境・VB6 バッチを載せたサーバーの更新期限
  • 2027年頃(予定)VBScript を Windows で既定で無効化(将来は削除)― Classic ASP の実行基盤、VB6 の VBScript.RegExp 等に影響
  • 2028年10月Windows 10 法人向け ESU 最終期限
  • 2029年(目安)Edge の IE モード サポート期限の目安

出典:Microsoft Lifecycle、.NET Support Policy、Windows IT Pro Blog。VBScript の無効化・削除の時期は方針表明であり、確定日ではありません。

VB6:本当のリスクは「周辺」から

開発環境を維持できない

新しい PC へのインストールやビルドが不安定になり、改修のたびに「VB6 が動く古い端末」を探すことになります。

改修できる技術者がいない

法改正・税制改正への対応が「できる人待ち」になります。

32bit の壁

64bit 版の Office・DB クライアント・ODBC ドライバとの組み合わせに制約が生じ、周辺環境の更新が止まります。

部品の供給が細っていく

ActiveX 版の部品は新規開発が縮小。VBScript を使う箇所は Windows 側の既定無効化の影響を受けます。

VB6 は「終わった技術」ではなく「直せなくなりつつある技術」。論点は動作ではなく、保守の継続性です。

Classic ASP の現状

プラットフォームがなくなる

Classic ASP は VBScript の上で動いています。Windows から VBScript が削除されれば、実行基盤そのものが失われます。

技術者が枯渇する

VBScript / Classic ASP を扱える技術者の確保が年々難しくなり、改修が「できる人待ち」になります。

外部連携の選択肢が狭まる

決済代行など外部サービスが提供する Classic ASP 向けモジュールは縮小傾向です。

IE 前提の実装は既に動かない

IE11 は 2022年6月に終了。クライアントサイド VBScript と IE 互換モード依存の画面は延命策が必要です。

Classic ASP は「サポートが切れる」より先に、「作れる人と繋げる先が無くなる」という形で行き詰まります。

Options

移行アプローチの 3 つの選択肢

OPTION A

現状維持(塩漬け)

コスト:小

メリット

  • 当面は追加投資が不要
  • 業務への影響がない

課題・リスク

  • 期限が来た時点で強制的に終了
  • 障害・法改正への対応手段がない
  • 対応できる技術者がいなくなる
OPTION B

スクラッチ再構築

コスト:大

メリット

  • 業務プロセスごと見直せる
  • 最新アーキテクチャを選べる

課題・リスク

  • 現行仕様の棚卸しに設計書が必須
  • 工数・期間が最大、仕様凍結が困難
  • 現行と同じ動作の保証が難しい
推奨 OPTION C

変換ツールによる移行

コスト:中

メリット

  • 現行仕様のまま .NET へ移行
  • 設計書の最新化が不要
  • 移行作業工数は手動比 1/5 以下
  • 変換ルールの積み上げで品質が安定

課題・リスク

  • VB6 / ASP 技術者には読みにくいコードになる

「そのまま .NET に載せ替えてから、必要な部分だけ作り直す」― 二段構えが現実的です。

VB6 の移行後の姿 ― C# / Windows Forms(.NET 10)

現行(VB6)移行後(.NET 10)
言語Visual Basic 6.0C#(VB.NET も選択可)
画面VB6 フォーム/標準コントロールWindows Forms/.NET 標準コントロール(WPF も選択可)
データアクセスADO / RDO / DAO / oo4oADO.NET / ODP.NET
サードパーティ部品ActiveX(OCX).NET 版の部品、または .NET 標準コントロール
実行環境VB6 ランタイム+OCX の登録(32bit).NET 10 ランタイム(64bit で動作可)
開発環境VB6 IDE(サポート終了)Visual Studio(現行製品)

Windows Forms は VB6 のフォームと構造が近く、画面レイアウトと操作感をほぼそのまま引き継げます。配布は ClickOnce などの方式を選択できます。

オプション:Web 化(Blazor Server)

移行後の C# / Windows Forms 版と同じソースをサーバーで動かし、ブラウザに表示します。画面を作り直さずに、社外や複数拠点からブラウザで使えるようになります。

標準

Windows Forms(デスクトップ)

現行の使い勝手を保ちたい場合

  • VB6 のフォームと構造が近く、画面と操作感をそのまま引き継げる
  • 帳票印刷・ローカルファイル・周辺機器を直接扱える
  • Windows クライアントへの配布は引き続き必要
オプション

Blazor Server(Web アプリ)

同じソースをブラウザで使いたい場合

  • Windows Forms 版と同じソースのまま、ブラウザで動作する
  • PC への配布が不要で、テレワークや複数拠点にも対応
  • 反応の速さと通信量はネットワークの状況に左右される
  • Windows サーバーが前提。帳票印刷は PDF 出力が基本

Web 版は Windows Forms 版と同じソースで動くため、まず Windows Forms で移行し、必要な業務からブラウザでの利用を広げることができます。 仕組み(Web 版のアーキテクチャ)を見る →

Solution

gmStudio によるツール支援型リライト

米国 Great Migrations 社製のマイグレーション開発プラットフォーム。弊社はライセンス販売・トレーニング・日本語技術サポートから、変換作業の請負まで対応します。

gmStudio VB6 / ASP / COM → .NET 移行ツール VB6 → C# / VB.NET ASP → ASP.NET Powered by Great Migrations

「一発変換」ではない

変換ルールを追加しながら何度でも変換し直す開発プラットフォーム。手修正ではなくルールを積み上げるため、ソースが更新されても同じ品質で再変換できます。

コンパイラ技術を応用

30年以上の言語処理技術が基盤。COM / ActiveX の API、Win32 API、組み込み関数を .NET の同等機能へ置き換えます。

移行中も改修を止めない

現行システムの改修と並行して進められるため、仕様凍結期間を短くできます。処理性能は約100万行/分。

対応する変換

VB6 言語→C# / VB.NET
VB6 フォーム→Windows Forms(WPF も選択可)
DB アクセス→ADO.NET / ODP.NET
Classic ASP→ASP.NET(C# / VB.NET)
サーバー VBScript→C#
クライアント VBScript→JavaScript
Remote Scripting→JavaScript

ASP.NET はコードビハインド形式で出力されます。Visual Studio 2010〜2022 のプロジェクト形式に対応し、変換先の .NET バージョンも選択できます。

VB6 アプリケーション .NET アプリケーション VB6 コード フォーム / モジュール サードパーティー部品 ActiveX(OCX) C# / VB.NET コード Windows Forms サードパーティー部品 .NET 版 gmStudio
ASP システム ASP.NET システム HTML 生成 asp / inc ライブラリ bas / cls HTML 生成 aspx / aspx.cs ライブラリ cs / vb gmStudio
Process

手動リライトとの比較

手動リライト

  1. 設計書の更新 or 作成
  2. テストケースの更新 or 作成
  3. 詳細設計書に基づくスクラッチ開発
  4. 単体テスト
  5. 結合テスト・システムテスト
  6. データ移行
  7. カットオーバー

gmStudio 移行

  1. 設計書が不要なら省略可能
  2. テストケースの更新 or 作成
  3. gmStudio による変換(ルール反復)
  4. 単体テスト
  5. 必要に応じて結合・システムテスト
  6. データ移行(不要なケースも多い)
  7. カットオーバー

ドキュメント類を最新化せずに移行できるため、実際の移行作業工数は 1/5 以下へ。設計書が必要な場合は AppDocOne(設計書作成サービス)もご利用いただけます。

変換の進め方 ― 3 ステップの反復

STEP 1 gmStudioコード変換 参照解決のルール追加
STEP 2 gmStudioコード変換コンパイル エラー解決のルール追加
STEP 3 gmStudioコード変換コンパイル単体テスト エラー解決のルール追加

参照の解決

ソースとライブラリをスキャンし、依存関係を解析してコンパイル順序を決定。解決できない参照に対応します。

コンパイルエラーの解決

gmStudio 内または Visual Studio でコンパイルし、発生したエラーを変換ルールとして解消します。

ランタイムエラーの解決

単体テストを実施し、実行時に顕在化する差異を修正します。ここまでが弊社の標準的な納品範囲です。

Third-party

サードパーティ製品への対応

CASE 1

.NET 版で API の変更がない場合

変換後にライブラリを .NET 版へ差し替え、名前空間を調整するだけで移行できます。

CASE 2

.NET 版の API が異なる場合

弊社が「中間ライブラリ」を提供し、変換後のコードに手を入れずに .NET 版へ接続します。差分をライブラリに閉じ込めるため、再変換しても手戻りが発生しません。

対応実績のある製品

データベースoo4o → ODP.NET / ADO・ODBC(Oracle)→ ODP.NET / ADO・ODBC(SQL Server)→ ADO.NET / RDO → ADO.NET
帳票Excel 連携 → 最新版 / SVF → .NET 版 / Crystal Reports → .NET 版 / ActiveReports → .NET 版 / PrintPRO → EUR
GUI 系SPREAD(ActiveX)→ SPREAD(.NET)/ InputMan(ActiveX)→ InputMan(.NET)/ TrueDBGrid・FlexGrid → .NET 標準 / ComponentOne / SSSplitter → ComponentOne
その他Win32 API → .NET 同等機能 / BASP21(メール送信)/ CDO / MSXML2 / Shell32 / Remote Scripting・クライアント VBScript → JavaScript

上記以外の製品も、中間ライブラリの新規作成により対応可能です。まずは使用製品の一覧をお知らせください。

Service menu

サービスメニュー

LEVEL 1

ライセンス販売+サポート

お客様主体で変換される場合

  • gmStudio ライセンスの販売
  • 操作トレーニングの提供
  • 日本語での技術サポート
LEVEL 2

コンパイルエラー除去まで

テスト以降を自社で持たれる場合

  • 参照解決・変換ルールの整備
  • 指定の .NET バージョンでコンパイルが通るソースコードを納品
  • 変換内容のレポート提出
推奨 LEVEL 3

ランタイムエラー除去まで

動く状態で受け取りたい場合

  • Level 2 の内容をすべて含む
  • 単体テスト(正常系)を実施
  • 通常オペレーションでランタイムエラーが発生しない状態まで修正して納品

移行実績

30社 50システム国内実績(VB6・Classic ASP の合計)
約100万行BMW Financial Services での採用事例(500 アプリケーション)

移行を手掛けた業務領域

  • 物流管理 / VB6
  • 債権管理 / VB6
  • リースシステム / VB6
  • 経理補助 / VB6
  • 基幹系バッチ / VB6
  • CAD マスタ管理 / VB6
  • 工作機械 / VB6
  • EDI / ASP
  • 販売管理 / ASP
  • 受注管理 / ASP
  • 経費管理 / ASP
  • コンビニ店舗管理 / ASP
  • 建設業向け案件管理 / ASP
  • グループウェア / VB6・ASP

オプションサービス

  • リファクタリング
  • データベースバージョンアップ
  • PostgreSQL への移行
  • 帳票の移行
  • 脆弱性チェック(OWASP Top 10)
  • IE 互換モード対応
  • Web 化(Blazor 版の追加開発)
  • 配布方式の整備(ClickOnce など)
  • 画面設計書の作成(AppDocOne)
Approach

プロジェクトの進め方

PHASE 0

現状調査・概算見積

弊社主体/1〜2 週間

ソース規模の棚卸し、参照ライブラリと使用コンポーネントの特定、移行方針と概算見積のご提示。

PHASE 1

本変換

弊社主体/規模に応じて

変換ルールの整備と反復変換、コンパイル・ランタイムエラーの解消、変換内容のレポート提出。

PHASE 2

テスト・移行

お客様と分担/規模に応じて

現行画面との突き合わせ確認、結合・システムテスト、配布・データ移行、カットオーバー。

お見積りまでの進め方

パターン A

ソースコードをご共有いただく

VB6 プロジェクト一式、または Classic ASP のソース一式をご共有ください。規模・参照関係・使用コンポーネントを解析し、移行方針とお見積りをご提示します。秘密保持契約は先に締結いたします。

パターン B

ソースを社外に出せない場合

gmStudio の試用版に備わる分析機能をお客様の環境で実行し、レポートを出力していただきます。そのレポートをもとにお見積りを行うため、ソースコードを社外にお出しいただく必要はありません。

まずは「使用しているサードパーティ製品(OCX / DLL)の一覧」と「おおよそのソース規模」をお知らせいただければ、初期のご回答が可能です。

Contact

使用しているコンポーネントの一覧とソース規模だけでも、まずはお聞かせください

お使いの開発基盤のバージョンと画面数だけでも、初期のご回答をお返しします。秘密保持契約の締結にも対応します。

TEL 03-5962-3776