No.3ベストアンサー
- 回答日時:
>なぜみんなWindowsのソースコードを手に入れないのでしょう。
技術的、社会的に面倒でメリットが無いからです。
ウイルスについては、確かにバグを利用したものもありますが、
その場合でも、既知のバグに対してウイルスを作成する人がほとんどだと思います。
>LinuxのようなWindowsに対抗している会社が、Windowsを研究するためにソースコードを手に入れることなどなないのですか。
私もそうですが、Linuxや*BSDとその周辺の開発者の多くはボランティアとして趣味でコードを書いています。商売でないのですから、Windowsの研究をする必要もありませんよね。
要は、人のコードを真似をして書いて、何が楽しいのか?と言うことなんです。
>もしくは、将棋ソフトを作っている会社が、他社のソフトの将棋の思考の大事な部分を手に入れるとか。
商売なんですから、解析するための時間と手間を考えたら、自分達で作ったほうがコスト面で有利だと思われます。
例えば、ラーメン屋が味の秘密を探るために他店のラーメンを食べるとか、スープを取り寄せて何を調味料に使っているかを調べるとか、そういうことをコンピューターソフト業界がやっているかと思っていたんですが、(ラーメン屋がやっていかは知りませんが)
ソフト業界ではやらないようですね。
ありがとうございました。
No.2
- 回答日時:
逆コンパイルとか言われる手法ですね。
ある程度は可能です。しかし、
価格=単価×個数
のような処理をビルドしたものを逆コンパイルしても、変数名の情報などが無いため、
a=b*c
のようなソースしか得られません。人間が理解するには厳しいです。
また、通常は処理の最適化などが行われるので、厳密に元のソースを復元するのは不可能です。
関数
価格(単価, 個数){価格=単価×個数}
メイン処理
魚の価格=価格(魚の単価, 魚の個数)
肉の価格=価格(肉の単価, 肉の個数)
↓
メイン処理
魚の価格=魚の単価×魚の個数
肉の価格=肉の単価×肉の個数
などとなっていると、関数が見えてこない。
あとは、ライブラリを使ったりしますし。
--
> 簡単に真似されたりすると思うんですけど、
そのために、使用許諾書などにそういう事を行わない場合に限って使用(インストール?)を認めますという旨の記述があります。
法律の条文にあったかはちと不明。
真似していた事がバレて、訴えられて、立証されれば、それによる損害を賠償しなければなりません。
とはいえ、人のソースコードを見るような事も、技術の発展には不可欠という側面もあります。
ソースコードを見なくても、データの並びやふるまいから処理内容が連想できて、設計の参考になる事はあります。
--
> ウィンドウズのEXEから、ソースコードに変換することはできないんですか?
逆アセンブルならば、debugコマンドとかで可能です。
開発環境が入っていると「デバッグしますか?」なんて聞かれて、見たくも無いソースを見せられる場合も…。
> すごい労力になるけど、やることは可能な気がするんですが。
通常は割に合わないので、誰もやりません。
例えば、Windows付属のメモ帳、一人で○○年がかりでとか、○億円かけて人を雇って○年がかりとかで出来るかも知れませんが…。
>逆アセンブルならば、debugコマンドとかで可能です。
できるのであれば、なぜみんなWindowsのソースコード
を手に入れないのでしょう。それとも、手に入れた人が、バグなんかを見つけて、ウィルスを作ったりしてるんですか?
>通常は割に合わないので、誰もやりません。
LinuxのようなWindowsに対抗している会社が、Windowsを研究するためにソースコードを手に入れることなどなないのですか。
もしくは、将棋ソフトを作っている会社が、他社のソフトの将棋の思考の大事な部分を手に入れるとか。
No.1
- 回答日時:
アセンブリ言語への逆コンパイルであれば出来ますね。
C言語のソースへといった場合は、コンパイルするときのパラメータでそういった指定をしておかないと出来ませんし、またコンパイラのベンダーが違うとかバージョンが違うといったことでうまくいかないこともありますね。
蛇足ですが、Javaはソースレベルまで逆コンパイルできるんですよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
- C言語・C++・C# exeファイルが作れない(windows10) 6 2022/08/13 08:47
- その他(プログラミング・Web制作) プログラム初心者です Pythonでタイピング練習サイトに 自動で入力するものをつくったのですが こ 2 2022/07/09 23:09
- C言語・C++・C# Cのコンパイルでコメントアウトをそのままオブジェクトに保持したい 7 2023/08/01 22:22
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- その他(ビジネス・キャリア) グーグルの障害者訓練プログラム募集あるがどうだろ?6時間勤務で月収22万!! 1 2023/02/17 20:36
- 労働相談 合意済み仕様の商品納入後における仕様変更要求への対応について 5 2023/04/19 09:41
- その他(プログラミング・Web制作) Windows上のプログラム。「予め決められた時刻に自分で起動して処理して自分で終了する」って可能? 3 2023/01/04 14:29
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アプリケーションのDLLファイル...
-
<unistd.h>をVisualStudioでつ...
-
C言語で作ったらWindowsでもMac...
-
gcc コンパイル killed
-
すべてのリビルド: 0 正常、 0 ...
-
C#で char型とstring型の比較で...
-
gccを使ってのリンク時のライブ...
-
Cのソースを毎回コンパイルし...
-
gcc バージョン違いによるコン...
-
Eclipseで使えるコンパイラ、リ...
-
Ubuntu上でITRONプログラムを作...
-
Visual studio2022 コンパイル...
-
python エラー
-
エクセルのエラーメッセージ「4...
-
1 つ以上の複数回定義されてい...
-
エクセルVBAではRound...
-
eclipseでプログラムが実行でき...
-
<conio.h>?
-
user32.dllがないためアプリが...
-
visual C++ でビルドの中止がで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
アプリケーションのDLLファイル...
-
math.hに含まれる関数が使えない
-
すべてのリビルド: 0 正常、 0 ...
-
C言語で作ったらWindowsでもMac...
-
c言語です コンパイルした時に...
-
C#で char型とstring型の比較で...
-
lhafileをインストールしたい
-
共有ライブラリの内容確認について
-
ビープ音が鳴りません・・・
-
実行後にコンパイルに失敗しま...
-
gcc バージョン違いによるコン...
-
シリアル通信の受信待ちについて
-
自作DLLの中身を暗号化
-
define文のパラメータを実行時...
-
[COBOL] ソースの復帰
-
64ビットのlinuxで32ビットメモ...
-
gcc コンパイル killed
-
<math.h>ヘッダを入力している...
-
「インクルードファイル 'pthre...
おすすめ情報