質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

Q&A

解決済

4回答

1917閲覧

explorerからexeを実行すると何が起きる?

kou0179

総合スコア304

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

0グッド

0クリップ

投稿2018/12/20 04:04

ご挨拶

閲覧ありがとうございます。ちょっと気になったので分かる方がいたらご教授願います。

まず

Windowsでは何かファイルを開く時に、大体の方はエクスプローラーからダブルクリックで起動しますね。
.txt をダブルクリックすればnotepad.exeなり既定のプログラムに、その.txtのパスが投げられて起動しますよね。.htmlだったらIEなりChromeなり、.jpg なら何らかのビュアーが開きますよね

そこで気になったのですが

Windowsでは実行ファイルに .exe という拡張子が割り当てられていますね。ダブルクリックすれば何かしらのプログラムが動きます。
不思議じゃないですか。これは。
.exeは、どのような流れで実行されるのでしょうか。 .exeを起動するための.exeがある。。。?それだと無限ループになってしまいますね。

どのような手順で.exeが起動するのか教えて頂きたいです。

なぜ気になったのか

リバースエンジニアリングがなかなか防げず(.NETだから情報が多いのかもしれませんが)、個人で開発しているソフトなので100万もする難読化を導入するわけにもいきません。
そこで隠蔽という形にとどまりますが、 example.exe --rename--> example.bin として、example.bin を実行する方法を模索しておりました。
この点についても分かる方がいましたらお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ダブルクリックすると拡張子に関連付けされたプログラムが起動します。
.txt に notepad "%1" が関連付けられていれば %1 の部分にダブルクリックしたファイル名が入ることになります。
.exe の場合はそもそもそれ自体がプログラムなので直接実行されます。

bin をダブルクリックで実行するには、bin をロードして exe ファイルとして実行できるプログラムに関連付ければできますが、暗黙の了解として bin は汎用バイナリファイルなので何か特定のファイルとして関連付けるべきではありません。その場合は独自に拡張子を作るべきでしょう。

また、exe を bin にリネームすることはリバースエンジニアリングを防ぐためには何の役にも立ちません。
関連付けなどレジストリを見ればすぐにわかることです。
それよりも、本当にリバースエンジニアリングを防がなければいけないのかというところを考えてみてください。
リバースエンジニアリングにはそれなりの手間がかかり、大方の場合はその手間をかけるだけのメリットがありません。

もしそれだけの価値があなたのソフトにあるのであれば、迷うことなく難読化を含め複数の手段を導入すべきだと思います。

投稿2018/12/20 04:18

Zuishin

総合スコア28660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kou0179

2018/12/20 04:32

ご回答ありがとうございます。 bin をロードして exe ファイルとして実行できるプログラムに関連付ければできますが― >> binについての暗黙の了解は存じ上げておりませんでした。勉強になります。 exe を bin にリネームすることはリバースエンジニアリングを防ぐためには何の役にも立ちません。>> 別でローダーを用意し、本体の場所が隠せれば防げると思いましたが甘い考えでした。 ついては、フリーで公開しているソフトに、ライセンス機能だけつけられ有償で販売されてしまっております。元々がフリーですので実害はございませんが、やはり何ら改良されずソースも公開してないソフトをそのような形で配布されると悔しく悲しいものです。 この度はご回答ありがとうございました!
Zuishin

2018/12/20 04:37

そういうことであれば、署名をつけることで改ざんを防ぐことができます。 フリーであれ著作権で保護されているので、ライセンスに違反しているのであれば法的手段に訴えることができますので、弁護士に相談してください。
kou0179

2018/12/20 04:44

そういうことであれば、署名をつけることで改ざんを防ぐことができます。>> そうなんですか!WEB系ばかり触ってきたので大変勉強になります。ありがとうございます。 法的手段については、賠償額と、それにかかる時間労力お金があまりにも見合わさなそうなので検討しておりません。 今回はいろいろ勉強させて頂きありがとうございました。
Zuishin

2018/12/20 04:47 編集

訴訟や賠償までいかなくてもいいんですよ。 権利を侵害していることをきちんと相手に伝えて差し止めを要求した事実を作らないと逆に作者側が権利侵害で訴えられることがあります。同じものを配布しているわけですから。 一度弁護士に相談してください。
kou0179

2018/12/20 04:51

権利を侵害していることをきちんと相手に伝えて差し止めを要求した事実を作らないと逆に作者側が権利侵害で訴えられることがあります。同じものを配布しているわけですから。>> それは恐ろしいですね... 警察より弁護士のが良いのでしょうか?エンジニア1年目で相談費用の用意が苦しく...
Zuishin

2018/12/20 04:53

1 回の相談で 5000 円くらいですから恐れることはありません。1 回で済むでしょう。法テラスなら無料です。警察だと大げさになるので面倒ごとがいやなら弁護士がいいと思います。
kou0179

2018/12/20 04:55

なるほど、ありがとうございます。弁護士相談について少し調べてみます。ありがとうございました。
guest

0

ベストアンサー

このPDFとかどうでしょう?

投稿2018/12/20 04:30

papinianus

総合スコア12705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kou0179

2018/12/20 04:36

ありがとうございます!読んでみます!参考になりそうです。
guest

0

「ある拡張子のファイルをダブルクリックしたら、どのexeプログラムが起動するのか?」という質問だとして回答します。

情報は、レジストリに記録されています。
コントロールパネルの、既定のプログラム→関連づけを設定する、で見られます。
Windows10だと、設定→アプリ→既定のアプリ→ファイルの種類ごとに既定のアプリを選ぶ、のようです。

レジジストリエディタで見る場合は、HKEY_CLASSES_ROOTの下です。

投稿2018/12/20 04:24

otn

総合スコア84498

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

質問への回答ではありませんが.NETの難読化について。
ConfuserExという無料の難読化ソフトウェアがあります。
ConfuserExの使い方

ConfuserExの効果についてはdotPeekという無料のツール(.NET用)が
あるのでそれを使用して確認することができます。
難読化前はコードがほぼ読める状態になっているはずです。
Free .NET Decompiler and Assembly Browser

投稿2019/01/02 09:55

編集2019/01/02 09:57
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問