A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
こんにちは
>exeファイルの中身のソースを確認する方法、つまりC++などの言語に戻す方法はありますか?
exe ファイルは、マイクロソフト製OSの規約による手順で機械語に変換されたバイナリファイルです。
従って、バイナリファイルを逆アセンブラなどの手法でニーモニックに戻して、パターンマッチングをするような(超めんどー)プログラム書かれたなら、ある程度は戻せるでしょう。 ある程度とは、exeファイル状態の時デバッグ情報は含まれ無いので定数名、変数名、関数名、その他マクロ、インクルードファイル名、クラス名、インスタンス名..など元のソースを復元するために必要な情報が決定的にありませんので、構文などの雰囲気だけひょっとしたら復元できるかも知れないという意味です。
>自作したexeファイルの中身のソースを勝手に解読されて、同じようなソフトを複製される可能性はありますか?
exeファイルからWindowsのソースを復元するよりも動作しているプログラムから、要求事項を読みとって設計仕様書を書けば、著名なOS上で動くものなら、exeファイルの中身を参考にせずとも新たに開発できてしまいます。
例えれば、小説であらすじが判れば、似たようなエピソードの物語を書くのは、元の小説を変にいじるより簡単ということです。 しかし、単にクローンを作っただけでは、当然オリジナリティがないのですぐに判ってしまいます(そんなもの恥ずかしいです)。 また同じOS上で動くものは、その機能の組み立て方も無限のバリエーションがあるわけでもないので似てきてしまいソースを比べたら同じ部分があったということはあり得ます。
独創的なアイデアであって、著作物(プログラム)を守りたいなら著作権法で守られるように考えておくべきでしょう。
No.3
- 回答日時:
アセンブラ・レベルでなら完全に読み取れます。
Cの場合は基本的にはソースがないと、exeだけではどうにもなりませんが、
関数名などは容易に想像できる形で埋め込まれているので、
ある程度わかります。
C++は基本的に関数名が変更される(パラメータの情報等が埋め込まれる)ので、Cほど容易には解析できません。(extern "C"を除く)
関数名変更のルールは規定されておらず、完全にベンダーに任せられています。ベンダーによっては、同じベンダーのコンパイラでもバージョンが違うと変更のルールが変わるものもあります。
よってC++の場合、解析は決してたやすくはないと思います。
完全に不可能とはいえませんが...
アセンブラとC++の両方に通じていて、使用されたコンパイラにも通じている人なら、完全に復元することは不可能にしても、ある程度の理解はされてしまう可能性は十分にあると考えます。
No.2
- 回答日時:
exeファイルの中にソースの情報がすべて入っているわけではないので、完全には無理だと思います。
ある程度なら、逆コンパイルなどのソフトがあると思います(私はやったことがないので詳しくは分かりません)。
また、exeファイルと別にソースを公開しているオープンソースのソフトもあります。
ただ、普通は、オープンソースでない場合は、元のソースを調べようとするような行為は、作者が禁止していることが多いようです(リバース・エンジニアリング禁止、などの言葉がマニュアルや利用規則などに書かれているなど)。
他人や会社のソフトを使う場合は、取り合えず、そこらへんをチェックしておいた方がよいと思われます。
また自作ソフトの場合は、完全には無理だが、ある程度は可能、ということで、公表する場合は利用条件としてそこは禁止と明記した方が良いと思われます。
No.1
- 回答日時:
逆コンパイラ用のツールはいくつかあります。
完璧に元に戻せるわけではありませんが、大まかな流れは掴むことができます。
ただ、私はプログラムは、有償無償に関わらず、フリー(日本でのフリーではなく、自由のフリー)で開発しますから、ソースも含めて公開してます。
フリーソフトウェアの定義 - GNU プロジェクト - フリーソフトウェア財団 (FSF) ( http://www.gnu.org/philosophy/free-sw.ja.html )
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(セキュリティ) exeファイルの個人情報について 3 2023/06/29 17:36
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- C言語・C++・C# exeファイルが作れない(windows10) 6 2022/08/13 08:47
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- WordPress(ワードプレス) [BuddyPress]試したいのですが! 3 2022/06/01 13:36
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- 労働相談 合意済み仕様の商品納入後における仕様変更要求への対応について 5 2023/04/19 09:41
- Chrome(クローム) Chrome拡張機能に詳しい方 1 2022/10/15 13:41
- その他(IT・Webサービス) エクセルの実行ファイルについての質問です。 1 2023/05/04 03:58
- アプリ アプリケーションが見つかりません 2 2022/07/13 21:07
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
ゲーム
Windows 95・98
-
exeファイルの中身を見る方法はありますか?
C言語・C++・C#
-
exeファイルの直接編集についての質問です。
その他(コンピューター・テクノロジー)
-
-
4
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
5
EXEファイルの解析
その他(コンピューター・テクノロジー)
-
6
python エラー
その他(プログラミング・Web制作)
-
7
バッチでテキストファイルから任意の行のみ取得したい
その他(プログラミング・Web制作)
-
8
実行ファイル(.exeファイル)の作り方を教えて!
その他(プログラミング・Web制作)
-
9
Excelで"で囲む方法
Excel(エクセル)
-
10
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
11
batである文字列内に特定の文字列が含まれているか確認したい
その他(プログラミング・Web制作)
-
12
ILSpyで、デコンパイルできない。
その他(プログラミング・Web制作)
-
13
IF関数で空欄(")の時、Nullにしたい
その他(Microsoft Office)
-
14
簡単にEXEファイルを作れるプログラミング言語/開発環境
その他(プログラミング・Web制作)
-
15
コマンドプロンプトのエラーについて
その他(パソコン・周辺機器)
-
16
runas実行した時にきかれるパスワードを手入力以外で読み込ませたい
その他(プログラミング・Web制作)
-
17
エクセルでエラーが出て困っています。
Excel(エクセル)
-
18
バッチ処理でファイルの中身を変数に入れるやり方
その他(プログラミング・Web制作)
-
19
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
-
20
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
相手先の方がPDFを開けません
-
exeファイルの中身を見ることは...
-
jlbという拡張子のファイルを開...
-
リンク先のファイルを一括ダウ...
-
拡張子 .lhdはどのようなソフト...
-
txtファイルから特定の文字列が...
-
2つのフォルダ内にある全てのフ...
-
windowsでpkgファイルを開きた...
-
ISOファイルとMDSファイ...
-
inddという拡張子ファイルを開...
-
mdsファイルを開くにはどうすれ...
-
ALB⇒JPEGへの変換
-
「指定された書庫ファイルはLZH...
-
PDFファイルの注釈の互換性
-
動画ファイルにパスワードをつ...
-
拡張子 「LPD」って なにで編...
-
BOX(ファイル共有)でエクセル...
-
MD2ファイルについて
-
ファイル検索ソフトEverything ...
-
Win10でショートカットファイル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
exeファイルの中身を見ることは...
-
jlbという拡張子のファイルを開...
-
拡張子 .lhdはどのようなソフト...
-
windowsでpkgファイルを開きた...
-
txtファイルから特定の文字列が...
-
ファイル検索ソフトEverything ...
-
BOX(ファイル共有)でエクセル...
-
大量のPDFファイルに内容を読み...
-
Win10でショートカットファイル...
-
動画ファイルにパスワードをつ...
-
相手先の方がPDFを開けません
-
リンク先のファイルを一括ダウ...
-
inddという拡張子ファイルを開...
-
拡張子 「LPD」って なにで編...
-
FileVisorは今でも使えますか?
-
Docuworksで文書の一括回転操作...
-
xls ファイルのはどうやれ...
-
mdsファイルを開くにはどうすれ...
-
拡張子がpxd開きたい
-
ISOファイルとMDSファイ...
おすすめ情報