プロが教えるわが家の防犯対策術!

プログラミングをはじめたばかりの者です。
ソフトの言語の種類を知る方法ってあるのでしょうか?
よくあるフリーソフトですが、逆コンパイラ?をしないとわからないのでしょうか?
逆コンパイラをしなくても調べられる方法がありましたらお教え願います。
何卒よろしくおねがいいたします。

A 回答 (3件)

最低限、実行環境ぐらいは明らかにしましょう。


CPUによってはアセンブリ言語しか実質的に存在しない場合もありますので、その場合はほぼ間違いなくアセンブリ言語です。
他の場合も、実行環境が限定できればかなり範囲を絞り込めることがあります。
    • good
    • 0

★私の判定方法


>ソフトの言語の種類を知る方法ってあるのでしょうか?
 ↑
 確実な方法はない。
>よくあるフリーソフトですが、逆コンパイラ?をしないとわからないのでしょうか?
 ↑
 例え逆コンパイラしても分からない事だってあるぞ。
 
>逆コンパイラをしなくても調べられる方法がありましたらお教え願います。
 ↑
 全てではないがある。
・まずはマニュアルを良く読んでみる事。場合によっては開発環境が記述されている。
 あと説明に必要なファイル(DLL)として次の項目があれば参考になります。
 (1)説明書に MFC の DLL が必要となっていれば⇒C++ 言語。
 (2)説明書に VB の DLL が必要となっていれば⇒VB 言語。
 (3)説明書に .NET の DLL が必要となっていれば⇒C# 言語かも。
・説明書に書かれていなくても MFC、VB、.NET の DLL を一時的に利用不可能に
 してから実行しエラーダイアログから判定することも可能。面倒だけど。
 その他、作られたプログラムを実行して見た目のデザインから見当をつける事も
 可能です。→ある程度のなれがあればの話。
 特に .NET のプログラムはメニューを表示したときのデザインで判断できる。
 あとプログラムサイズが小さいなら C/C++ 言語かもしれない。
 C/C++ 言語も MFC を利用していなければ C 言語+SDK なのかも。
・上記以外でも分からない場合はバイナリー・エディタでプログラムを覗く事で
 分かることもあります。
・ちなにみ、なぜ開発言語を知りたいの?
 どの言語でプログラミングを行えばいいか知りたいだけかな?
・以上。参考に。
    • good
    • 2

バイナリエディタで実行ファイルを覗きます。


Vectorなどにたくさんあるので好きなのを選んでください。

より厳密にやるのなら、各言語のコンパイラがどんなバイナリを吐くか自分で調べる必要があるでしょう。

判定の例:

Microsoft Visual C++ Runtime Library
があったら Microsoft Visual C++ 製

MSVBVM50.DLL
などがあったら Microsoft Visual Basic 製
    • good
    • 0

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