- ベストアンサー
GDI+でやっとgng絵を出せたのですが
少し気になることがあります。 GDI+を使ってコンパイルリンクして作ったアプリは GDI+を導入していないパソコンや95で実行して動くのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
MSDN からの引用ですが、 >Windows NT/2000/XP: Included in Windows XP and Windows .NET Server. >Redistributable: Requires GDI+ on Windows NT 4.0 SP6; Windows 2000; and Windows 98/Me. となっています。95はサポートしていないようです。 商用アプリでも、95をサポート外にしているものも多いので、それほど気にすることはないでしょう。 gdiplus.dll は、アプリケーションと一緒に配布できます。ただし、システムフォルダにはインストールせずに、実行ファイルと同じフォルダに置くようにしなければなりません。XPでは gdiplus.dll は不要ですが、あっても問題なく動いています。
その他の回答 (2)
リンクがうまくいって良かったです。 >実行ファイルフォルダにdgiplus.dllが存在すれば実 行ファイルを実行することはできるのでしょうか? gdiplus.dllさえあれば実行できます。 以前、98SE/2000 をクリーンインストールして試してみて問題なかったのですが、98/Me/NT4.0は試していません。
お礼
ありがとうございます。
#1 です。 リンクと実行は区別して考えてください。 gdiplus.dll はリンク時には不要で、実行時には必要です。実行時に gdiplus.dll は、実行ファイルと同じフォルダにあるようにします。 gdiplus.lib はリンク時には必要ですが実行時には不要です。 BC++ は詳しくないですが、gdiplus.lib を lib フォルダに入れて、ilink32.exe で gdiplus.lib をファイルの1つとしてリンクしてもダメなのですか?
お礼
ありがとうございます。 実験の結果 コンパイルリンク時gdiplus.libはlibフォルダに有ればよく必ずしも実行ファイルフォルダに有る必要はないみたいですね。 ご指摘の通り コンパイルリンク時gdiplus.dllだけが実行ファイルフォルダに無ければならないようですね。 GDI+はインストールされていないパソコンであっても 実行ファイルフォルダにdgiplus.libが存在すれば実行ファイルを実行することはできるのでしょうか? (この実験はGDI+をアンイストールしないとできないので大変です。)
補足
失礼しました。 dgiplus.dllと書くところをdgiplus.libと書いてしまいました。 GDI+はインストールされていないパソコンであっても 実行ファイルフォルダにdgiplus.dllが存在すれば実行ファイルを実行することはできるのでしょうか? (この実験はGDI+をアンイストールしないとできないので大変です。)
補足
ありがとうございます。 他のlibファイルの場合はうまくいくのに gdiplus.libとgdiplus.dllを実行ファイルフォルダに置かずにBorlandのlibディレクトリに置くとコンパイルに失敗するのですがこれはgdiplus.libとgdiplus.dllは実行ファイルフォルダに置くことになっているからでしょうか?