プロが教える店舗&オフィスのセキュリティ対策術

ものすごく趣味レベルの質問なので、余裕のある方、教えてください。

32bitイメージのEXEやDLLでバージョン情報リソースを持つファイルは、
VerQueryValue関数でバージョン情報を取得できますが、
16bitイメージのEXEやDLLの場合は、関数自体がエラーを返すので取得できません。

いまさら16bitイメージのEXEを視野に入れるのもどうかな?とは思いますが、
簡単に取得可能であれば32/16bitのどちらでも読めるようにロジックを書きたい、というわけです。

リソースを直接読み出そうとがんばったんですが、結局LoadLibrary関数なども
16bitイメージは開けないようで・・・。

やっぱりサンクとか使うんでしょうか?・・・面倒だなぁw

A 回答 (1件)

サンクもだめですね。

汎用サンクでは32bitから16bitのモジュールの呼び出しはサポートされていません。

なんで、直接バイナリファイルとしてフォーマットを解析しながら読むしかないかな。


参考になりそうなのはKBのJ053795、Q201685なんですけど、Webだと番号変わっちゃって見つからないです・・・
    • good
    • 0
この回答へのお礼

昨日の夜、16bitコンパイラで自前のDLLを作って、その中でリソース取ってきて、サンク(QT_Thunk)でDLL呼び・・・
とか考えたんですが、「趣味アプリでそこまでやりますか!」って結論に達しました(ノ∀`)

とりあえず、32bitだけを視野に入れて考えます。
taka_tetsuさん、回答ありがとうございました~

お礼日時:2005/03/25 12:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!