C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 51 を表示中)
■27829 / )  Re[3]: DLLとEXEの違い
□投稿者/ よねKEN (20回)-(2008/11/15(Sat) 14:15:25)
2008/11/15(Sat) 14:16:41 編集(投稿者)

> >dllはそれだけじゃ、実行できないですよね。
> 例えばマスター検索Formのような共通Formを作成する場合、dllでもexeでも作成できますよね。
> そういった場合、どちらで作成しても変わりは無いのでしょか?

動作上は変わりありません。

> 変わり無ければ、exeで作った方が単独でも起動できるのでメリットがあるように思います。
> (単独で起動する必要があるかどうかは別にして)

逆にいえば、単独で起動する必要がない/単独で起動されては困るものをDLLにします。
一般的にはクラスライブラリをDLLにします。クラスライブラリは通常、
単独で実行する必要もなければ、単独で実行するメリットもないからです。

EXEで作った方がメリットがあるかどうかですが、
単独で起動できる必要があるか/意味があるかによるでしょう。

単独で起動する必要のないものを無闇にEXEにすることはお勧めしません。
例えば、ログイン画面Aと次に表示する画面Bがあって、A.EXEとB.EXEにした場合に、
B.EXEは単独で実行できちゃいますが、ログイン画面通らずに実行されるのはまずいですよね。
#厳密には、B.DLLにしておけば安全というわけではなく、
#Bを単独では使えないようにしておく必要があるわけですが。
#(例えばA.EXEで得られるログイン情報がなければ、B.DLLのメソッドを呼べないようにしておくとか)

> >see エントリ ポイント
> もう少しヒントを頂けると助かります。

EXEにはエントリポイントがありますが、DLLにはエントリポイントがありません。
エントリポイントとは、起動時に最初に実行されるメソッドです。

返信 編集キー/


管理者用

- Child Tree -