- ベストアンサー
自作windowsアプリの互換性について
- C++かJavaで自作windowsアプリを作成する際、PCの実行環境に依存する程度はどの程度なのか?
- アプリ作成時には実行環境に依存しないように作成することができる
- 作成したアプリはWindows(XP以降)の初期インストール状態でも実行可能
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Express editionで作成するとして、Frameworkのバージョンの問題があります。 1.1(多分使わないでしょう)/2.0/3.0/3.5/4.0があります。 2010でしたら多分ですが (1.1)/2.0/3.0/3.5/4.0 の指定ができますが、実行環境にそのバージョンのFrameworkが必要になります。 また、ANo.1さんが書かれいるように C++ の場合はランタイムライブラリ(再頒布可能パッケージ )が必要ですが、これもExpress のバージョンに合ったバージョンが必要になります。 例えばExpress が2010でしたらC++も同じバージョンが必要になります。 http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=a7b7a05e-6de6-4d3a-a423-37bf0912db84 従って、作成するExpressでのFrameworkのバージョン指定とC++のバージョンにより決まってしまいます。 実行環境にこれらがインストールしてない場合は、マイクロソフトからダウンロード・インストールする必要があります。 XPではFrameworkはインストールされていなかったと思いますので、自分でインストールする必要があります。 C++ のランタイムライブラリもインストールされていないと思います。
その他の回答 (2)
- samtomsan
- ベストアンサー率55% (1060/1897)
> その点はJava等でも同じということでしょうか Javaは逆で、元々環境(ハードやOS)に依存しない言語として開発されています。 従って、WindowsでもMac OSでもiOsでもAndroidでも動くことを前提としています。 細かくはバージョンによって違いがありますが、手直しは大きくはありません。 ただし、複雑なプログラムとかハードに依存するとか実行速度などはC++と比較したら劣りますので、どのようなプログラムを作るかによって選択すれば良いと思います。 質問のようなプログラムでしたらどちらでも良いでしょう。 ただ、個人的な意見ですが、将来に渡ってプログラムを仕事とするならC/C++を先に身につけることをお勧めします。
お礼
ご返信が遅くなり失礼しました。ご回答ありがとうございます。 web上で調べてみましたが、ご指摘のとおり、Javaの方が バージョンの違い等にそれほど気を使わなくても良いというのは魅力ですね。 また、利用している人が多いせいか参考になるサイトや文献が大量にあるのも 初心者としては嬉しいです。 ただ、これまでCで書いたプログラムが利用できるという点と、 ごくごく個人的な範囲でしか利用しないことを考えて、 ひとまず勉強がてらC/C++をさらに勉強していくことにします。 重ねてご回答ありがとうございました。
- Wr5
- ベストアンサー率53% (2173/4061)
>仮にVisual C++(Express edition)でアプリを作成したとして、 >上記のような簡単なことをするだけのアプリでは、 >どの程度、PCの実行環境に依存するものなのでしょうか? VCのランタイムが必要になる…でしょうね。 # コード生成で/MTにすれば…マシになる……のかな?
お礼
ご回答ありがとうございます。ランタイムが必要ということですね。 Windows Update等でインストールされるなら問題ないのですが、それも調べてみます。 ひとまずお礼までに。
お礼
ご回答ありがとうございます。 またランタイムのダウンロードリンクまで貼っていただいてありがとうございます。 やはりランタイムは必要最小限の環境として必要なのですね。 その点はJava等でも同じということでしょうか。 .NET Framework等の知識はほぼゼロなので、少し自分で調べてみたいと思います。 取り急ぎ、お礼までに。