通常、DLLを個別のプログラムのようにインストールすることはありません。Windowsがファイルの不足を通知する場合、正しい対処は、そのDLLを提供するコンポーネントが何かによって決まります。提供元はプログラム本体、Visual C++ Redistributable、DirectX、またはWindowsです。ファイルをダウンロードしてシステムフォルダーへコピーすることから始めないでください。このガイドでは、提供元のコンポーネントを復元する、Windowsを確認する、DLLを診断するという3つの実践的な方法を説明します。各方法の後には、エラーが出たプログラムまたはゲームを実際に起動して確認してください。
DLLを手動でインストールする必要はあるか?
DLLは、アプリケーションが依存関係とともに読み込むライブラリであり、汎用のインストールパッケージではありません。そのため、「xxx.dllをダウンロードしてSystem32に置く」という方法では、通常は原因を解決できません。ファイルが別のDLLを必要とする場合や、アプリケーションのバージョンまたはアーキテクチャと一致しない場合があります。
| 必要なもの | 安全な方法 |
|---|---|
| 特定のプログラム用DLL | 公式の提供元からプログラムを再インストールする |
vcruntime、msvcp、msvcr | 該当するMicrosoft Visual C++ Redistributableをインストールまたは修復する |
d3dx9、xinput、d3dcompiler | 公式のDirectXコンポーネントを復元するか、ゲームを再インストールする |
| WindowsのシステムDLL | DISMを実行してからSFCを実行する |
| 開発元から提供された個別のDLL | 開発元のドキュメントに正確に従う |
| インターネット上の不明なDLL | 手動でインストールしない |
DLLをインストールする方法:手段の簡単な比較
| 方法 | 最適なケース | 有効性 | ユーザーの手間 |
|---|---|---|---|
| コンポーネントのインストールまたはプログラムの再インストール | 1つのアプリケーションだけで起きるエラー、または既知のライブラリ名 | コンポーネントを正しく特定できた場合は高い | 少ない |
| DISMとSFC | 複数のプログラムでのエラーとシステムDLL | Windowsコンポーネントには高い | 中程度 |
| Fionn DLL Fixer | 原因が不明、またはDLLと依存関係の確認が必要な場合 | 自動診断と修復 | 少ない |
方法1:コンポーネントをインストールするか、プログラムを再インストールする
使用する場面:
エラーが1つのプログラムでのみ発生する場合、またはファイル名が既知のランタイムを示す場合です。たとえば、vcruntime140.dllについて個別ファイルを探すのではなく、Microsoft Visual C++ Redistributableをインストールまたは修復してください。d3dx9、xinput、d3dcompilerについては、ゲームの公式インストーラーまたは公式のDirectXコンポーネントを使用してください。
- エラーメッセージにあるDLLの完全な名前とプログラム名を書き留めます。
- エラーが1つのプログラムだけに関係する場合は、設定 → アプリ → インストールされているアプリ
を開きます。

- 問題のプログラムを削除するか、利用できる場合は公式の修復機能を使用します。
- 開発元の公式サイト、またはプログラムを入手したストアからのみインストーラーをダウンロードします。
- プログラムまたは指定されたコンポーネントをインストールし、もう一度起動します。
確認: プログラムが「DLLが見つかりません」というメッセージなしで起動します。インストーラーが再び同じファイルを要求する場合は、アプリケーションのアーキテクチャに合うコンポーネントのバージョンを選んだことを確認してください。32ビットプログラムにはx86、64ビットプログラムにはx64を使用します。
DLLはどこにインストールするか:System32かSysWOW64か?
フォルダー名だけで選ばないでください。64ビット版Windowsでは、System32には64ビットのシステムライブラリがあり、SysWOW64には32ビットのシステムライブラリがあります。名称は歴史的な理由で逆のように見えます。ただし、WindowsはDLLを1つの固定フォルダーだけから検索するわけではありません。アプリケーションのフォルダー、システムフォルダー、その他の許可された検索パスが関係します。また、DLL自体が他のライブラリに依存していることもあります。
regsvr32でDLLを登録する必要はあるか?
いいえ、既定では必要ありません。regsvr32はDLLのインストーラーではなく、対応する自己登録をサポートするDLLおよびOCXでのみ機能します。一般的なDLL不足エラーは、登録が必要であることを意味しません。プログラムの開発元または公式ドキュメントが、特定のファイルを登録するよう明示し、適切なコマンドを示している場合にのみregsvr32を使用してください。
方法2:Windowsのシステムファイルを復元する
使用する場面: 互いに関係のない複数のプログラムで同じエラーが発生する場合、Windowsの障害後、またはシステムコンポーネントの破損が疑われる場合です。Microsoftは、まずDISMを実行し、その後にSFCを実行することを推奨しています。

- Windows ターミナル(管理者) を開きます。
- 次のコマンドを実行し、完了するまで待ちます。
DISM.exe /Online /Cleanup-image /Restorehealth - DISMの後、次のコマンドを実行します。
sfc /scannow
- Windowsからファイルが修復されたと表示された場合は、コンピューターを再起動します。
- 問題のアプリケーションをもう一度起動します。
確認: SFCがスキャンを完了して結果を表示し、アプリケーションが以前のエラーなしで開きます。詳細はMicrosoftのSFCおよびDISMの説明 で確認できます。
方法3:Fionn DLL FixerでDLLとシステムコンポーネントを確認する
使用する場面: 不足、破損、または互換性のないDLL、System32の問題、DirectX、Visual C++、.NET、OpenAL、XInputの依存関係を診断する必要があり、手動でコンポーネントを特定するのに時間がかかる場合です。Windows向けFionn DLL Fixerは、スキャン、修復、再確認に対応しています。
- Fionn DLL Fixerを起動し、DLLとシステム問題の自動スキャンが完了するまで待ちます。

- スキャン後、検出された問題の修復を開始するにはRepairをクリックします。

- 処理が完了するまで待ちます。処理中、ボタンにはFixingと表示されます。

- 確認ダイアログでOkをクリックし、求められた場合はコンピューターを再起動します。

- 再起動後もエラーが続く場合は、Recheckをクリックします。新たな問題が見つかった場合は、もう一度Repairを選択します。

確認: 再スキャンで以前の問題が表示されず、アプリケーションが起動します。この方法は診断を簡単にしますが、プログラム固有のファイルが破損している場合に、そのプログラムを再インストールする必要がなくなるわけではありません。
まとめ
DLLを正しくインストールするには、個別ファイルの配置先ではなく、まず提供元のコンポーネントを特定してください。1つのプログラムでのエラーなら、プログラムまたは公式ランタイムを再インストールします。複数のプログラムで起きるシステム障害には、DISMを実行してからSFCを実行します。エラーの原因が不明で、DLL、システムパス、ゲームの依存関係を確認する必要がある場合は、Fionn DLL Fixerを使用してください。結果は、問題のプログラムが正常に起動することでのみ確認できます。メッセージが変わらない場合は、全文を保存し、開発元の公式サポートへ連絡してください。
よくある質問
DLLをプログラムのフォルダーに置いてもよいですか?
特定バージョンのプログラムについて、開発元の公式ドキュメントで明示されている場合に限ります。それ以外では、プログラムまたはランタイムを再インストールしてください。これにより、互換性のある依存関係一式が復元されます。
64ビットDLLを自動的にSysWOW64へ入れるべきではないのはなぜですか?
64ビット版Windowsでは、SysWOW64は32ビットのシステムライブラリ用です。ただし、DLLは検索規則に従って読み込まれ、他のファイルに依存する可能性もあるため、手動でフォルダーを選ぶことは依然として万能な解決策ではありません。
regsvr32コマンドが必要なのはいつですか?
自己登録をサポートするDLLまたはOCXに対し、開発元から明示的な指示がある場合だけです。大半のDLL不足メッセージは修復できません。
vcruntime140.dllにはどう対処すればよいですか?
公式の提供元から該当するMicrosoft Visual C++ Redistributableをインストールまたは修復するか、それを必要とするプログラムを再インストールしてください。非公式のカタログから単体ファイルをダウンロードしないでください。
DISMとSFCの両方を実行する必要はありますか?
システムファイルを復元するために、MicrosoftはDISMを実行してからSFCを実行する順序を推奨しています。これらのコマンドは、個別プログラムのファイルを再インストールする代わりにはなりません。
Emily Carter