
古いWindowsインストーラ、サービスを正しく開始していないこと、およびファイルが破損している場合、「Windowsインストーラサービスにアクセスできませんでした」というエラーが出る場合があります。今回はこのエラーが出た場合の修正方法をご紹介します。
1. レジストリからWindowsインストーラサービスをリセットする
まずは、レジストリのWindowsサービスをリセットしてみます。サービスが正しく機能していない状態でインストールプロセスを行っている場合、Windowsインストーラサービスにアクセスできない状態となっています。
レジストリからWindowsインストーラサービスをリセットする前にレジストリのバックアップを作成することをお勧めします。そのため、問題が発生した場合にレジストリファイルを簡単に復元できます。
レジストリのバックアップを作成したら、[スタート]メニューをクリックしてメモ帳を開きます。
- メモ帳を開き、次のコードを貼り付けます
Windows Registry Editor Version 5.00 [HKLM\SYSTEM\CurrentControlSet\services\MSIServer] "DisplayName"="@%SystemRoot%system32msimsg.dll,-27" "ImagePath"=hex(2):25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,6f,00,6f,00, 74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d, 00,73,00,69,00,65,00,78,00,65,00,63,00,20,00,2f,00,56,00,00,00 "Description"="@%SystemRoot%system32msimsg.dll,-32" "ObjectName"="LocalSystem" "ErrorControl"=dword:00000001 "Start"=dword:00000003 "Type"=dword:00000010 "DependOnService"=hex(7):72,00,70,00,63,00,73,00,73,00,00,00,00,00 "ServiceSidType"=dword:00000001 "RequiredPrivileges"=hex(7):53,00,65,00,54,00,63,00,62,00,50,00,72,00,69,00,76, 00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,72,00,65,00,61,00, 74,00,65,00,50,00,61,00,67,00,65,00,66,00,69,00,6c,00,65,00,50,00,72,00,69, 00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,4c,00,6f,00,63,00, 6b,00,4d,00,65,00,6d,00,6f,00,72,00,79,00,50,00,72,00,69,00,76,00,69,00,6c, 00,65,00,67,00,65,00,00,00,53,00,65,00,49,00,6e,00,63,00,72,00,65,00,61,00, 73,00,65,00,42,00,61,00,73,00,65,00,50,00,72,00,69,00,6f,00,72,00,69,00,74, 00,79,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00, 65,00,43,00,72,00,65,00,61,00,74,00,65,00,50,00,65,00,72,00,6d,00,61,00,6e, 00,65,00,6e,00,74,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00, 00,00,53,00,65,00,41,00,75,00,64,00,69,00,74,00,50,00,72,00,69,00,76,00,69, 00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,53,00,65,00,63,00,75,00,72,00, 69,00,74,00,79,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00, 00,53,00,65,00,43,00,68,00,61,00,6e,00,67,00,65,00,4e,00,6f,00,74,00,69,00, 66,00,79,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53, 00,65,00,50,00,72,00,6f,00,66,00,69,00,6c,00,65,00,53,00,69,00,6e,00,67,00, 6c,00,65,00,50,00,72,00,6f,00,63,00,65,00,73,00,73,00,50,00,72,00,69,00,76, 00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,49,00,6d,00,70,00,65,00, 72,00,73,00,6f,00,6e,00,61,00,74,00,65,00,50,00,72,00,69,00,76,00,69,00,6c, 00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,72,00,65,00,61,00,74,00,65,00, 47,00,6c,00,6f,00,62,00,61,00,6c,00,50,00,72,00,69,00,76,00,69,00,6c,00,65, 00,67,00,65,00,00,00,53,00,65,00,41,00,73,00,73,00,69,00,67,00,6e,00,50,00, 72,00,69,00,6d,00,61,00,72,00,79,00,54,00,6f,00,6b,00,65,00,6e,00,50,00,72, 00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,52,00,65,00, 73,00,74,00,6f,00,72,00,65,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67, 00,65,00,00,00,53,00,65,00,49,00,6e,00,63,00,72,00,65,00,61,00,73,00,65,00, 51,00,75,00,6f,00,74,00,61,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67, 00,65,00,00,00,53,00,65,00,53,00,68,00,75,00,74,00,64,00,6f,00,77,00,6e,00, 50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,54, 00,61,00,6b,00,65,00,4f,00,77,00,6e,00,65,00,72,00,73,00,68,00,69,00,70,00, 50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,4c, 00,6f,00,61,00,64,00,44,00,72,00,69,00,76,00,65,00,72,00,50,00,72,00,69,00, 76,00,69,00,6c,00,65,00,67,00,65,00,00,00,00,00 "FailureActions"=hex:84,03,00,00,00,00,00,00,00,00,00,00,03,00,00,00,14,00,00, 00,01,00,00,00,c0,d4,01,00,01,00,00,00,e0,93,04,00,00,00,00,00,00,00,00,00[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesmsiserverEnum] "0"="RootLEGACY_MSISERVER000" "Count"=dword:00000001 "NextInstance"=dword:00000001 - 完了したら、[ファイル]をクリックし、オプションのリストから[名前を付けて保存]をクリックします。
- 次に、ファイルに任意の名前を付けます。この時、ファイル名の最後に.reg拡張子を付けるようにしてください
- 「ファイル・タイプ」から「すべてのファイル」を選択し、「保存」をクリックします。
- その後、.regファイルを保存した場所に移動します
- ファイルをダブルクリックし、アクセス許可を求められたら[はい]をクリックします。
- 完了したら、問題のあるアプリケーションをインストールして、エラー:Windowsインストーラサービスにアクセスできませんでしたが、引き続き発生するかどうかを確認します。
2. Windows インストーラ サービスを開始する
Windows インストーラー サービスが何らかの理由で停止し、起動時に正しく起動されていない場合、この問題の主な原因である可能性があります。
- Windowsインストーラサービスを起動するには、[スタート]メニューをクリックし、「コマンドプロンプト」と入力します。
- コマンドプロンプトを右クリックし、[管理者として実行]をクリックします。
- コマンドプロンプトが開いたら、以下のコマンドを入力してWindowsインストーラサービスを開始します
net start MSIServer - サービスが実行されているかどうかを確認するには、Windows + Rキーを押して[ファイル名を指定して実行]プログラムを開きます。
- services.msc と入力し、Enter キーを押します。
- これにより、サービスページに移動し、キーボードのWを押してWindowsインストーラサービスを見つけます
- サービスを右クリックし、オプションのリストから[プロパティ]を選択します。
- サービスの状態を確認し、サービスが機能していない場合は、[スタート]ボタンをクリックします
- 完了したら、問題のあるアプリケーションをインストールし、この方法が機能したかどうかを確認してください。
3. Windowsインストーラサービスを再登録する
エラーがまだ出ている場合は、Microsoftインストーラサービスが登録解除されている可能性があるため、再登録してみてください。
- [スタート]メニューをクリックし、「コマンドプロンプト」と入力します。
- コマンドプロンプトを右クリックし、[管理者として実行]をクリックします。
- 以下のコマンドを1つずつ挿入し、行の各コードの後にEnterキーを押します
%windir%system32msiexec.exe /unregister
%windir%system32msiexec.exe /regserver
%windir%syswow64msiexec.exe /unregister
%windir%syswow64msiexec.exe /regserver - 完了したら、コンピュータを再起動します
- 32ビットユーザーの場合は、以下のコマンドを入力し、各行の後にEnterキーを押します
msiexec /unregister
msiexec /regserver - 次に、コンピュータを再起動し、問題のあるアプリケーションをインストールして、エラーが修正されたかどうかを確認します。
4. regsvr32 コマンドを実行する
上記の方法でも解決しない場合、 regsvr32 コマンド ラインを使用します。以下は手順です: -
- [スタート]メニューをクリックし、コマンドプロンプトを入力します
- コマンドプロンプトを右クリックし、[管理者として実行]を選択します。
- 以下のコマンドを挿入してEnterキーを押します
regsvr32 c:windowssystem32msi - 完了したら、ターミナルを閉じて、問題のあるアプリケーションをインストールして、エラーが解決しないかどうかを確認します。
5. 複製された msiexec ファイルの名前を変更する
Windows インストーラー ディレクトリに同じ名前のファイルが複数ある場合に発生することがあります。これを回避するには、以下の手順に従ってファイルの名前を変更する必要があります。
Windows インストーラー ディレクトリに同じ名前のファイルが複数ある場合に発生することがあります。これを回避するには、以下の手順に従ってファイルの名前を変更する必要があります。
エクスプローラーを開き、次のディレクトリに移動します。
- C:\Windows\System32
- 重複する msiexec ファイルを探します。ファイルのサイズは 0 KB を探します。
- 複製された msiexec ファイルの名前を msiexec.old に変更します。
- 完了したら、サービスに移動し、Windowsインストーラサービスを再起動します
- 次に、問題のあるアプリケーションをインストールして、エラーが修正されたかどうかを確認します。
6. SFC コマンドと DISM コマンドを実行する
SFCまたはシステムファイルチェッカーは、ユーザーがシステムファイルを修復できるようにするユーティリティコマンドです。一方、DISM には、チェックヘルス、スキャンヘルス、およびリストアヘルスの 3 つのコマンドが含まれています。CheckHealth コマンドは、問題を引き起こす可能性のあるエラーがないかデータベースを検査します。ScanHealthを使用すると、ユーザーはより高度なスキャンを行い、Windowsイメージの損傷を検出できます。最後に、RestoreHealthを使用すると、Windowsイメージを修復できます。これらのコマンドは、Windowsファイルとともに高度なDLLパッケージが含まれているため、強力です。
これらのコマンドは、エラーを引き起こす破損したWindowsインストーラファイルを修正する可能性があります。
- SFCコマンドとDISMコマンドを実行するには、[スタート]メニューをクリックしてコマンドプロンプトを入力します。
- キーボードのCtrl + Shift + Enterキーを押して、管理者としてコマンドプロンプトを開きます
- コマンドプロンプトが開いたら、次のコマンドを1つずつ入力し、各コマンドの後にEnterキーを押します
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow - これらのコマンドをすべて入力したら、ターミナルを閉じて、エラーの原因となっているアプリケーションをインストールしてみてください。
7. 最新のWindowsインストーラ再頒布可能をインストールする
それでも問題が解決せず、どの方法も機能しない場合は、最新のWindowsインストーラ再頒布可能パッケージをインストールしてみてください。
最新のWindowsインストーラ再頒布可能ファイルをダウンロードは下記にあります。
https://support.microsoft.com/en-us/topic/windows-installer-4-5-is-available-bf06be18-3e0a-d5eb-4549-b482f67e1c46
https://support.microsoft.com/en-us/topic/windows-installer-4-5-is-available-bf06be18-3e0a-d5eb-4549-b482f67e1c46
コメント