• 締切済み

読み込むDLLのディレクトリを変更したい

Visual C++ 7.1を使用しています。 ライブラリを使って作成したアプリを配布するとき、 一緒にDLLファイルも配布しないと起動できませんよね? 通常は、DLLファイルのパスは実行ファイルと同じか、 system32などのディレクトリに入れなければ 「~~~.dllが見つかりません。」 みたいなエラーが表示されるかと思います。 (違ったらすみません) そうではなく、DLLファイルが10個以上ありますので、 実行ファイルと同じディレクトリだとややこしくなるため、 実行フォルダより1つ下の階層にまとめて置きたいのですが、 そのような事は可能なのでしょうか? できれば、LoadLibraryなどの関数は使わず、 何かしらの設定で出来るのであればそれが望ましいです。 可能でしたら、方法をご伝授いただけると助かります。 よろしくおねがいします。 サンプルですが構成としては以下のような感じです。 (※[ ]はフォルダ名を表します) [Main]  ReadMe.txt  実行ファイル.exe  [Image]   image1.png   image2.png  [Sound]   sound1.wav   sound2.wav  [DLL]   graphics2d.dll   input.dll   sound.dll   file.dll

みんなの回答

noname#208124
noname#208124
回答No.1

XP以降ではマニフェストファイル(orリソース)を使えば可能です http://bitwiz.jp/tabid/56/EntryID/64/Default.aspx 2000以前だとApp PathsのPATHが環境変数PATHに追加されるのでそこもLoad-Time Dynamic Linkingで読み込まれる対象に入ります http://support.microsoft.com/kb/178883/en-us

参考URL:
http://msdn.microsoft.com/en-us/library/ms682586.aspx

関連するQ&A