• ベストアンサー

デコンパイル?について

MrBanの回答

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.4

* 一般にそういう行為は「リバースエンジニアリング」と呼ばれます。 * GPL等のようにライセンスで許可されているものもありますが、 * 大抵のソフト(特に製品)ではライセンス条項で禁止されていることが多いです。 * 当然、多くのソフトではソースなど公開していません。 * (ソース公開しているゲームを選んでダウンロードしたのでしょうか?) > コンパイルされたファイルをコンパイル前の状態に戻せるというのですが、本当でしょうか。 嘘です。仮にデコンパイルしても完全な状態にはできません。 # C/C++よりは、Javaの方が多少マシな状態になりますが… いずれにせよ、デコンパイルして解析するのは、 ソースを自分で書く以上に高度な知識や技術が必要だと思いますので、 素人/初心者にはまず活用できないような難易度になると思います。 JavaはVMとか要求されるので、ちょっと調べればJavaか否かは分かります。 (GCJとかはちょっと特殊ですが…まぁレアケースだと思うので) せめてこのくらいは判断できないと、仮にデコンパイルできても有益な情報が得られないのでは…? また、C/C++(ネイティブ)とJavaに共通のデコンパイルなどというものはまずないと思います。 両者の根本的な設計が違うので、同じ方法で対応しようというのがまず間違いなんじゃないかと。 > そのゲームのフォルダではありませんが、別のゲームのファイルにはmakeという名前のファイルがありました。 "Makefile"があるならまだ分かりますが、ゲームのフォルダに"make"ですか? プログラミングに使うmakeとは同名の別物だったりしませんか? # 「負け」ファイルだとか、キャラ作成(make)ファイルだとか…

puzzy
質問者

お礼

そうなんですか・・・。 元のソースファイルは所有者からもらうということでしか 中身を見るのは不可能ということですね。 逆コンパイルして、ソースコードなど分裂できたらと思っていました。 いろいろと情報、ありがとうございました。

関連するQ&A

  • C言語の用語について。

    現在Cygwinを使ってC言語?をやりはじめたものです。 make app=ファイル名でコンパイル?すると思うのですが、 make、app=、ビルドとはなんですか? 以前Javaを少しやっていたのですが、 make = javac app= = .java ビルド = コンパイル みたいなものですか?

  • Eclipseでクラスファイルが生成されない

    Eclipse(Helios)、java(JDK1.6)の環境で作業をしています。 指定した出力フォルダにクラスファイルが生成されません。 先日までは生成されていました。 コンパイルエラーはありません。 Javaのビルドパス ⇒ ソース ⇒ デフォルト出力フォルダの指定です ソースフォルダごとの出力フォルダの指定を可能にするはオフにしてあります。 設定は少しくらい変えたかも知れませんが、重要なところは変えていないと思います。 # あやふやですみません。 考えられる理由を教えてください。

    • ベストアンサー
    • Java
  • コマンドプロンプト

    初心者ですが、よろしくお願いします。 Cドライブの中にjavaというフォルダを作り、この中に「HelloWorldApp.java」というソースファイルを作りました。 そして、コマンドプロンプトを使ってこのソースファイルを コンパイルしようとしているのですができません。 「C:\java>dir」を行うと、「ドライブCのボリュームラベルがありません。」と出ます。コンパイルできないのと関係あるのでしょうか?

    • ベストアンサー
    • Java
  • eclipseのフォルダ

    eclipseのフォルダには 1.フォルダ 2.ソースフォルダ 3.パッケージ の3つの概念がありますが 1のフォルダにおいたJavaファイルを コンパイル対象にするにはどうしたらいいのでしょうか? 2のソースフォルダにJavaファイルを置いた場合は そのJavaファイルをクリックするとファイルが開きコンパイルが自動的に行われます。 しかし1のフォルダにJavaファイルを置いた場合は そのJavaファイルをクリックするとファイルが開くもののコンパイルは行われません。 1の単純なフォルダにJavaファイルをおいてもクラスファイルはできないのでフォルダを作って使うことに価値は無いのでしょうか?

    • ベストアンサー
    • Java
  • C言語CGIの一括コンパイルの方法

    10年くらい前に作ったゲームの復活を考えています。 当時ledhat7.1上で展開していたゲームをSentOS上で再開します。 ゲームはC言語で出来ていますが、作った本人が手を付けることができません。 そこで、当方が10年前の姿にまでは持っていこうと考えています。 いろいろ調べていくと、 「C言語によるCGIプログラムは、それを動かそうとする サーバー上でソースファイルをコンパイルする必要があります。 他のマシンでコンパイルしたCGIプログラムをそのまま持って来ても、動かない 可能性の方が大きいです。ご注意下さい。」 という記述を見つけました。 全部、コンパイルし直す必要がありそうです。 当方の現在の環境は下記の通りです。 サーバー  自宅にあり。直接接続可能 もちろんSSHも可 CGI の数 178個 ディレクトリは40個くらいに分かれている コンパイル前のC言語ファイルは「.c ファイル」として 保存されている ひとつひとつコンパイルしていったのでは、1ケ月くらい 掛かりそうです。 一括コンパイルのような方法はありませんでしょうか? 一括でなくとも、ディレクトリごとでも構いません。 宜しくお願い致します。

  • jspとサーブレット

    jspはサーブレットに比べるとソースファイルを生成しなければならない分、処理速度が遅くなると書かれてたのですが、ソースファイルを生成とはどういうことなのかわかりません。htmlに埋め込まれたJAVAを取り出すということでしょうか? またサーブレットもJSPもクライアントから要求がきてからプログラムをコンパイルしてるのでしょうか?すなわちコンパイルされてないままWEBサーバに保管されてるのですか? 2点よろしくお願いします。

    • ベストアンサー
    • Java
  • JNAでc言語ファイルの読み込み方が分かりません

    JNAでc言語ファイルの読み込み方が分かりません JNAを使用して、javaからcを読み込み動作するプログラムを作っています。 なんとなく定義は分かってきたのですが、 javaのソースコードに CLibrary.INSTANCE.printf(); のように、c言語を書き込んでいる状況なのですが、 JNAを利用した.javaファイルから.cファイルを読み込む方法はありますか? c言語の場合、.cファイルごとに分割された関数をmainが呼び出すとき、 extern void Sample(); とプロトタイプ宣言の後に Sample(); で呼び出せるみたいなので、 これを使って、 CLibrary.INSTANCE.extern void Sample(); とやってみましたが、コンパイルできませんでした;; 他にやり方がありますか? 知ってる方がいらっしゃいましたら、教えてください。 よろしくお願いします。

    • ベストアンサー
    • Java
  • シンボルを見つけられませんというエラーでコンパイルできない

    こんにちは。 Test.javaとTest2.javaというファイルを作りコンパイルしようとしたんですがタイトルのエラーが出てコンパイルできません。全く意味が分からなくて困ってます。 test.javaの中で Test2 test2 = new Test2(); という形でTest2クラスのインスタンスを生成しています。 同じフォルダの中にあるのに見当たらないというのはどうにも分かりません。 環境変数は CLASSPATH . PATH C:\Program File\Java\jdk1.5.0_06\bin となってます。

    • ベストアンサー
    • Java
  • あるCのソースをコンパイルしたのですが、なぜか実行時にエラーになってし

    あるCのソースをコンパイルしたのですが、なぜか実行時にエラーになってしまいます。 (Command not found. と表示されてしまいます。) 初心者です。 さくらインターネット上で makeコマンドで生成したファイルが ls -l で -rwxr-xr-x 1 xxxxxxxxx users 8730 May 6 14:08 screw と表示されるのですが カレントをそのまま(Cソースがあるフォルダ)で screw と実行すると screw: Command not found. と表示されてしまいます。 何が悪いのでしょうか?

  • flrからswfへコンパイルするにはどうしたらいいですか

    flashのデコンパイラ"flare"を用いてswfをデコンパイルしてflrファイルを生成しました。 このflrファイルを再びswfに戻すにはどうしたらよいですか。 有料のソフトを使わずに、無料でコンパイルする方法を教えてください。 OSはwindows vistaです。