VB6 ランタイム ライブラリが Windows 8 に同梱されていないため、vb6 が Windows 8 で動作しないと仮定すると、VB6 ランタイム ライブラリを Windows 8 にインストールしてから VB6 を実行することはできませんか? それとも別の問題がありますか?
13 に答える
編集: Microsoftは、Windows 8 で VB6 ランタイムをサポートする予定です。
VB6 アプリは、2011 年 9 月 13 日現在、Developer Preview の Windows 8 で引き続き動作します)。. それらは Consumer Preview でも動作し、前述のように、Microsoft は VB6 が Windows 8 で動作するように取り組んでいます。
これは本当に答えるのが非常に難しい質問ですが、できる限り最善の回答をしようと思います.
まだリリースされておらず、おそらく開発の初期段階にあるため、確かなことはわかりません. また、VB6 アプリケーションを Windows 8 で実行できるようにするために、どのような種類のハッキングが発生する可能性があるかを予測する方法もありません。コミュニティが何らかの回避策を考え出すのは時間の問題であると確信しています。あなたが本当にそんなに心配しているなら。純粋な好奇心以外の理由がなければ、おそらく自分で調べることさえあります。
ただし、公式には、この構成はサポートされない可能性が高いということです。
...Windows 7 以降の Windows の将来のバージョンに VB6 ランタイムを含める予定はありません。
Windows 8 が 64 ビット バージョンでのみリリースされるという話も考慮する価値があります (Server 2008 R2 の場合と同様)。VB6 ランタイム (および VB6 コンパイラによって作成されたすべてのアプリケーション) は 32 ビットであるため、エミュレートされた 32 ビット レイヤー (WOW) で実行する必要があります。一部のアプリでは、Windows 7 の 64 ビット バージョンでの実行で既に問題が発生しており、この問題はさらに悪化する可能性があります。IDE は現在、Windows の 64 ビット バージョンではサポートされていないため、レガシー アプリケーションの継続的なメンテナンスがはるかに困難になります (ただし、価値があるのは、Server 2008 R2 を実行している開発ボックスに問題なくインストールしただけです)。
Microsoft は 2012 年 1 月の時点でサポート ステートメントを更新しました。VB6 は Windows 8 でサポートされるようです。
VB6 ランタイムが出荷され、OS の存続期間中 Windows 8 でサポートされます。Visual Basic 6.0 ランタイム ファイルは引き続き 32 ビットのみであり、すべてのコンポーネントを 32 ビット アプリケーション プロセスでホストする必要があります。開発者は、Windows 8 のサポート ストーリーが Windows 7 のサポート ストーリーと同じであると考えることができます。
Microsoft は先月、Windows Vista、Windows Server 2008、Windows 7、および (最も重要な) Windows 8 の全期間にわたって、Visual Basic 6 アプリケーションの「It Just Works」互換性を延長すると発表しました。Visual Basic 6.0 リソース センターで説明されているように、「コアの Visual Basic 6.0 ランタイムは、これらのオペレーティング システムの全期間にわたってサポートされます」。このコミットメントは、5 年間のメインストリーム サポートとそれに続く 5 年間の延長サポートで構成されます。
Karl Peterson は VB6 プログラマーであり、以前は Visual Studio Magazine および Visual Basic Programming Journal の長年のコラムニストでした (2010 年まで、人気のある VB Corner コラムなどを執筆していました)。Peterson 氏は、この発表により、VB6 ランタイムの寿命が彼の予定された引退を公式に過ぎたと述べています。そして、その事実は、Peterson が「2020 年代の COBOL」と呼ぶ、大量の動作する VB6 コードを使用している企業に影響を与える可能性があります。</p>
「Classic VB コミュニティの多くは、Windows 以前の時代に活動を開始し、今では引退が間近に迫っています」と彼は言います。「そして、多くの企業で組織的な知識が失われることは、機能的なコード ベースをさらに定着させるだけです。」</p>
Peterson は、Microsoft の決定は、VB6 の採用が「企業内のゲリラであった愛好家やシェアウェア タイプの作者」を超えたという事実を反映していると述べています。彼は、Microsoft がサポートの延長に動いた可能性が高いのは、企業が依然として真に価値のある VB6 コードを維持しており、すぐにそれから移行できる立場にないためだと述べています。
出典: MSDN マガジン
私が言えることは、Windows 8 でも Windows 7 とまったく同じように動作するということです。Windows 7 のすべての機能は Windows 8 でも動作すると言っています (ハードウェアが同じであると仮定します)。膨大な数の VB6 アプリがまだ存在するため、理由もなくサポートを終了することは意味がありません。Windows 8 フォーラムから何人かの人にチェックしてもらうことができます。彼らは Developer Preview 以外のビルドにアクセスでき、フィードバックを得ることができるかもしれません。
ここにも役立つ投稿があります: Google Groups Post
Microsoft は、後方互換性を保証することで、得るものはすべてあり、失うものは何もありません。Visual Studio は、Vb6 テクノロジを .net と統合する方法として Interop を宣伝しました。Interop が機能するには vb6 ランタイムが必要であると推測されるため、Microsoft がこの互換性を削除した場合、Microsoft は自分自身を撃つことになるようです。
32ビットのWindows8プレビュービルドにVB6IDEをインストールし、いくつかの既存のアプリをコンパイルすることができました。64ビットバージョンへのインストールはまだ成功していません。
私が見たところ、VB6ランタイムは機能しているように見えます...しかし、Windows 8RTM64ビットにIDEをインストールしようとした私の試みは大きな失敗でした。私は多くの非常に大きなエラーに遭遇し(多くはOLE登録に関係しているようです)、インストーラーは正しく終了しませんでした。VB6開発ではXPVMを使い続けます。
また、Windows 8で何が機能するかについても慎重にアプローチします。単純なバニラフォームを読み込んで表示できることは、SQL ServerへのADO接続の実行、メディアの読み込みと再生、または任意の種類の実行とは大きく異なります。深刻なソケット通信。いつものように、徹底的にテストしてください!:)
編集:Microsoftのサポートステートメント(別のコメントにリンクされている)は、現状のWindows8がIDEをサポートしないことを検証しているようです。
msvbvm60.dll を Visual Basic 6 exe と同じフォルダーに配置すると動作することを読みました。私はこれを個人的に確認しておらず、もちろん Windows 8 でも確認していません。
私が販売している 20,000 行の VB6 コードで販売しているユーティリティがあります。このユーティリティは、インストール パッケージを使用せずにドラッグ アンド ドロップで展開するだけで済みます。そのため、Windows 8 におけるこの問題にも強い関心を持っています。