スキップしてメイン コンテンツに移動

PCゲームやソフトがDLLを読み込む場所と順番

PCゲームやソフトを必要なDLLが無くて動かないときに「DLLが見つかりません」のメッセージが出たりします。

ランタイムパッケージを入れたり、DLLを準備したときにどのようにDLLが検索されているか重要です。


DLLを読み込む場所と順番

  1. アプリケーションの実行ディレクトリ
  2. システムディレクトリ(例:C:\Windows\System32やC:\Windows\SysWOW64)
  3. Windowsディレクトリ(例:C:\Windows)
  4. カレントディレクトリ
  5. 環境変数PATHに含まれるディレクトリ
この検索順序の特性で先に読ませたいDLLをロードさせることも可能です。

64bit環境で32bitアプリを動かす時

64bit環境のOSではシステムディレクトリ(C:\Windows\System32)は64bitのDLLが入っているため、32bitアプリではSystem32のDLLは利用されません。

SysWOW64の仕組みで32bitのDLLが用意されているC:\Windows\SysWOW64のディレクトリが利用されます。

このブログの人気の投稿

Win95/98時代のゲームを今のWindows10/11で遊ぶ・動かす方法

 昔のWindows95/Windows98時代のゲームを今でも遊びたいという人は多いと思います。自分もそうです。 でもWindows10やWindows11で動かそうとしてもそのままではうまく動かないときが多いので対処方法をまとめておきます。 対処方法の一覧 対処方法1:ゲームが入っているメディア(FD・CD)から直接コピーする 対処方法2:古い環境でゲームをセットアップして内容をコピーする 対処方法3:DirectX 9.0cをインストールする 対処方法4:互換モードを利用する 対処方法5:DXWndでフルスクリーンゲームをウインドウ化する 対処方法6:DDrawCompatでグラフィックス関連の互換性を上げる 対処方法7:_inmm.dllでCD音源を再生できるようにする 対処方法8:64bit環境ならWOW64の仕組みをふまえて調整する 起動したゲームの例 ぷよぷよ、ぷよぷよ通、バーチャファイターPC、電脳戦機バーチャロン 対処方法1:ゲームが入っているメディア(FD・CD)から直接コピーする Windows95/98時代のゲームのインストーラは今のWindowsでうまく動かなかったりします。 ゲームが入っているメディア(FD・CD)の中身を見てみて、ゲームの実行プログラム(EXEプログラム)やゲームのファイルがそのまま見える状態ならコピーしてみましょう。 もしsetup.exeや内容がCABファイルで圧縮されているゲームはセットアップが必要でこの方法は使えません。 手順 1. ゲームが入っているメディア(FD・CD)をエクスプローラで開く 2. ゲームのプログラム(EXE)やDLLファイル、WAVやMIDファイル、TXTファイル、その他ファイルなどが沢山入っているフォルダがあるか確認する 3. 見つかったらCドライブにゲーム名のフォルダを作り、中身をコピーする 4. ゲームのプログラム(EXE)を実行してみて動くか試してみます 対処方法2: 古い環境でゲームをセットアップして内容をコピーする 対処方法1ができないゲームはWindows XPなどの少し前のパソコンがあれば、そこにセットアップしたものをコピーする方法があります。 ただしファイルのコピーだけでは動かず、セットアップでレジストリに登録された内容もコピーする必要があるゲームもあります。 手順...

DirectX 9.0c ランタイムのダウンロードとインストール方法

Windows10やWindows11でWindowsXPや95/98時代のゲームを遊ぶとき、その時代のDirectXランタイムであるDirectX 9.0cが必要な場合があります。 2025年現在もマイクロソフトから公式配布されています。ダウンロードして保管しておきましょう。 ダウンロード方法 1. 下のダウンロードページにアクセス。ページの言語が変わるだけでダウンロードできるファイルはどちらも変わりません。 日本語ダウンロードページ ダウンロードセンター DirectX End-User Runtimes (June 2010) 英語ダウンロードページ Download Center DirectX End-User Runtimes (June 2010) 直接リンク https://download.microsoft.com/download/8/4/A/84A35BF1-DAFE-4AE8-82AF-AD2AE20B6B14/directx_Jun2010_redist.exe 2. ページにある「ダウンロード」をクリック。 3. directx_Jun2010_redist.exeがダウンロードされます。 現在ダウンロードできるファイル 2025/1/18現在のファイル内容です。 バージョン: 9.29.1974.1 公開日: 2021/2/20 ファイル名: directx_Jun2010_redist.exe ファイルサイズ: 95.6 MB (100,275,120 byte) インストール方法 1. セットアップファイルの展開先が必要なので、適当な場所に新規のフォルダを作成しておきます。 2. directx_Jun2010_redist.exeをダブルクリックして実行。 3. ライセンス確認が出たら「Yes」をクリック。 4. フォルダの選択が出たら「Browse」をクリックして、作成したフォルダを選択して「OK」をクリック。 5. 作成したフォルダに沢山のファイルが展開されるのを待ちます。 6. 完了したら、作成したフォルダの中にあるDXSETUP.exeをダブルクリックして実行。 7. 画面の指示に従ってインストール。

Windows11 25H2のアップグレードを止める方法

Windows11 25H2がリリースされました。24H2のときは2025年1月ぐらいから強制アップデートが始まったので、25H2も同じなら2026年1月ぐらいから自動的にアップグレードがされると思います。 しっかり準備できたタイミングでアップグレードしたい場合はWindows11 25H2に上がらないように設定します。 対処方法 OSのバージョンがWindows11 24H2固定になるようにレジストリで設定を変更します。 レジストリの設定 1. レジストリエディタを起動します。 2. HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windowsを開きます。 3.「Windows」の下に「WindowsUpdate」が無い場合は「Windows」のところで右クリックして「新規」→「キー」をクリックし、「新しいキー #1」が表示されたら「WindowsUpdate」に名前変更します。 4. 「WindowsUpdate」のところを開きます。 5. 右側のところで右クリックして「新規」→「DWORD(32ビット)」をクリックし、「TargetReleaseVersion」という名前で作ります。ダブルクリックし、値を「1」にして「OK」をクリックします。 6. 右側のところで右クリックして「新規」→「文字列値」をクリックし、「TargetReleaseVersionInfo」という名前で作ります。ダブルクリックし、値を「24H2」にして「OK」をクリックします。 7. 右側のところで右クリックして「新規」→「文字列値」をクリックし、「ProductVersion」という名前で作ります。ダブルクリックし、値を「Windows 11」にして「OK」をクリックします。 8. 「WindowsUpdate」の中に3つの設定値が登録できたら、レジストリエディタを終了します。 9. 再起動します。 対処後 Windows11 24H2に固定化されます。もし25H2にアップグレードするときは作成した設定を削除してください。