トップ回答者
Microsoft.VisualBasic.Compatibility.VB6 の実行環境について

質問
-
こんにちは。
現在システムの更新に向けて、新構成の調査や検討を実施しています。
その中で情報のページを発見し、一部分の表記について確認させていただきたいと思っています。
「さらに、Visual Basic 6.0 と Compatibility名前空間は、32 ビット プラットフォームを対象としていました。 64ビットプロセスからのCompatibility名前空間の呼び出しはサポートされていないため、予期しない結果が生じる可能性があります。」
とありますが、Win10(64bit)でVB2010(32bit)で動作させた場合、上記ケースには当てはまらなくサポートの範疇なのでしょうか。(当構成で進みたい)
言葉の定義が自分はあまり理解ができておらず。
プラットフォーム=OS(Windows)
プロセス =VB(当方のサイトでいうと)
と置き換えてよいものかを懸念しています。
またプロセスは64bitではサポートされないとありますが、
プラットフォームが64bit(プロセスは32bit)ではサポートしないとは書いてありません。
ご存知のかたがいれば、教えて頂けませんでしょうか。
【対象URL】
Microsoft.VisualBasic.Compatibility.VB6.<member> は互換性のために残され、32 ビット プロセス内でのみサポートされる
//msdn.microsoft.com/ja-jp/library/ee839621
回答
-
プラットフォームとプロセスの理解は大よそ合っています。補足でEnvironment.Is64BitOperatingSystemがTrueを返すのが64bitプラットフォームであり、Environment.Is64BitProcessがTrueを返すのが64bitプロセスです。
なお、Microsoft.VisualBasic.Compatibility.VB6名前空間は見ての通りすべて廃止済みです。いつ使えなくなってもおかしくないことを記憶にとどめておく必要があります。
すべての返信
-
プラットフォームとプロセスの理解は大よそ合っています。補足でEnvironment.Is64BitOperatingSystemがTrueを返すのが64bitプラットフォームであり、Environment.Is64BitProcessがTrueを返すのが64bitプロセスです。
なお、Microsoft.VisualBasic.Compatibility.VB6名前空間は見ての通りすべて廃止済みです。いつ使えなくなってもおかしくないことを記憶にとどめておく必要があります。
-
TO:佐祐理 様
早速の返信をありがとうございます。承知しました。
改めての確認ですが、「Win10(64bit)のVB2010(32bit)」であれば、
当ページの内容に合致しないといった認識でよいということで、宜しいでしょうか。
見ての通りすべて廃止済みです。いつ使えなくなってもおかしくないことを記憶にとどめておく必要があります。
→Webで検索をするに佐祐理様が仰るとおり、今後は廃止される可能性が高いため、
現行のプログラムを利用し続けるつもりならば、いずれは変換対応が必要になるものかと思います。
ただ、今回は期間、費用面から命令として利用している箇所が多い(1000件以上)ため、今回は命令の置換えは回避したいと考えています。
今後の懸案として対応したいと考えています。
-
改めての確認ですが、「Win10(64bit)のVB2010(32bit)」であれば、当ページの内容に合致しないといった認識でよいということで、宜しいでしょうか。
いまいち何を確認したいのかわかりませんでした。
- Environment.Is64BitProcessがFalseを返すプロセスであればドキュメントタイトルの32ビットプロセス内でのみサポートされるの条件を満たします。
- 当該ドキュメントはVisual Studio 2010および.NET Framework 4.0を対象としていますが、.NET Framework 4.0は2016/01/12にサポートを終了していますので、サポートについて言及するのは無意味です。またWindows 10は2016/08/02のアップデートで.NET Framework 4.6.2に更新されています。