Skip to content

Class not registered Error code: Wsl/CallMsi/REGDB_E_CLASSNOTREG #11282

Description

@sreejith988

Windows Version

Microsoft Windows [Version 10.0.22621.3155]

WSL Version

0.0.0.0

Are you using WSL 1 or WSL 2?

  • WSL 2
  • WSL 1

Kernel Version

No response

Distro Version

No response

Other Software

Docker Desktop (Windows)

Repro Steps

in PowerShell execute wsl --status
image

Expected Behavior

it should show the status of the wsl

Actual Behavior

showing error code
Class not registered
Error code: Wsl/CallMsi/REGDB_E_CLASSNOTREG

Diagnostic Logs

PS C:\WINDOWS\system32> & "C:\Program Files\Docker\Docker\resources\com.docker.diagnose.exe" check
Starting diagnostics

[2024-03-11T09:19:59.069975000Z][com.docker.diagnose.exe.ipc][I] ipc.NewClient: 37fb0117-diagnose -> \.\pipe\dockerBackendApiServer BackendAPI
[2024-03-11T09:19:59.073513900Z][com.docker.diagnose.exe.ipc][I] (f55aecd2) 37fb0117-diagnose C->S BackendAPI POST /idle/make-busy
[2024-03-11T09:19:59.074641100Z][com.docker.diagnose.exe.ipc][W] (f55aecd2) 37fb0117-diagnose C<-S NoResponse POST /idle/make-busy (1.1272ms): Post "http://ipc/idle/make-busy": open \.\pipe\dockerBackendApiServer: The system cannot find the file specified.
[2024-03-11T09:20:00.087939900Z][com.docker.diagnose.exe.ipc][I] (5531b644) 37fb0117-diagnose C->S BackendAPI GET /idle
[2024-03-11T09:20:00.089928300Z][com.docker.diagnose.exe.ipc][W] (5531b644) 37fb0117-diagnose C<-S NoResponse GET /idle (1.9884ms): Get "http://ipc/idle": open \.\pipe\dockerBackendApiServer: The system cannot find the file specified.
[PASS] DD0027: is there available disk space on the host?
[FAIL] DD0028: is there available VM disk space? failed to retrieve the size information from ''
[SKIP] DD0002: does the bootloader have virtualization enabled?
[SKIP] DD0018: does the host support virtualization?
[FAIL] DD0001: is the application running? Docker is not running
[SKIP] DD0022: is the Virtual Machine Platform Windows Feature enabled?
[SKIP] DD0021: is the WSL 2 Windows Feature enabled?
[FAIL] DD0024: is WSL installed? exit status 0xffffffff
[FAIL] DD0025: are WSL distros installed? prereq failed: is WSL installed?
[PASS] DD0026: is the WSL LxssManager service running?
[FAIL] DD0029: is the WSL 2 Linux filesystem corrupt? prereq failed: are WSL distros installed?
[FAIL] DD0035: is the VM time synchronized? prereq failed: is WSL installed?
[FAIL] DD0017: can a VM be started? prereq failed: is WSL installed?
[FAIL] DD0016: is the LinuxKit VM running? prereq failed: is the application running?
[FAIL] DD0011: are the LinuxKit services running? prereq failed: is the LinuxKit VM running?
[FAIL] DD0004: is the Docker engine running? prereq failed: are the LinuxKit services running?
[PASS] DD0015: are the binary symlinks installed?
[FAIL] DD0031: does the Docker API work? prereq failed: is the Docker engine running?
[PASS] DD0013: is the $PATH ok?
[FAIL] DD0003: is the Docker CLI working? prereq failed: is the Docker engine running?
[FAIL] DD0005: is the user in the docker-users group? prereq failed: is the LinuxKit VM running?
[FAIL] DD0038: is the connection to Docker working? prereq failed: is the Docker engine running?
[FAIL] DD0014: are the backend processes running? prereq failed: is the LinuxKit VM running?
[FAIL] DD0007: is the backend responding? prereq failed: are the backend processes running?
[FAIL] DD0009: is the vpnkit API responding? prereq failed: are the backend processes running?
[FAIL] DD0010: is the Docker API proxy responding? prereq failed: are the backend processes running?
[SKIP] DD0006: is the Docker Desktop Service responding?
[FAIL] DD0030: is the image access management authorized? prereq failed: is the Docker engine running?
[PASS] DD0033: does the host have Internet access?
[PASS] DD0002: does the bootloader have virtualization enabled?
[PASS] DD0018: does the host support virtualization?
[WARN] DD0001: is the application running? Docker is not running
[PASS] DD0022: is the Virtual Machine Platform Windows Feature enabled?
[PASS] DD0021: is the WSL 2 Windows Feature enabled?
[WARN] DD0024: is WSL installed? exit status 0xffffffff
[WARN] DD0025: are WSL distros installed? prereq failed: is WSL installed?
[PASS] DD0026: is the WSL LxssManager service running?
[WARN] DD0029: is the WSL 2 Linux filesystem corrupt? prereq failed: are WSL distros installed?
[WARN] DD0035: is the VM time synchronized? prereq failed: is WSL installed?
[WARN] DD0017: can a VM be started? prereq failed: is WSL installed?
[WARN] DD0016: is the LinuxKit VM running? prereq failed: is the application running?
[WARN] DD0011: are the LinuxKit services running? prereq failed: is the LinuxKit VM running?
[WARN] DD0004: is the Docker engine running? prereq failed: are the LinuxKit services running?
[PASS] DD0015: are the binary symlinks installed?
[WARN] DD0031: does the Docker API work? prereq failed: is the Docker engine running?
[WARN] DD0032: do Docker networks overlap with host IPs? prereq failed: does the Docker API work?

Please note the following 17 warnings:

1 : The check: is the application running?
Produced the following warning: Docker is not running

Is the Docker Desktop application running?

**2 : The check: is WSL installed?
Produced the following warning: exit status 0xffffffff

The Docker engine runs inside a WSL environment. Therefore WSL must be installed. Try running wsl --status.

3 : The check: is WSL installed?
Produced the following warning: exit status 0xffffffff

The Docker engine runs inside a WSL environment. Therefore WSL must be installed. Try running wsl --status.

4 : The check: are WSL distros installed?
Produced the following warning: prereq failed: is WSL installed?

The Docker engine uses several WSL distributions. Therefore these must be installed.

5 : The check: is WSL installed?
Produced the following warning: exit status 0xffffffff

The Docker engine runs inside a WSL environment. Therefore WSL must be installed. Try running wsl --status.

6 : The check: are WSL distros installed?
Produced the following warning: prereq failed: is WSL installed?

The Docker engine uses several WSL distributions. Therefore these must be installed.

7 : The check: is the WSL 2 Linux filesystem corrupt?
Produced the following warning: prereq failed: are WSL distros installed?

If the WSL 2 Linux filesystem is corrupt then Docker Desktop cannot start.
There is a known issue fixed in Windows Insider builds which can cause filesystem corruption, see:
#5895 .

Try running "wsl --shutdown" to stop your WSL Virtual Machine. When it restarts it will
run a filesystem check and hopefully fix the problem.

8 : The check: is WSL installed?
Produced the following warning: exit status 0xffffffff

The Docker engine runs inside a WSL environment. Therefore WSL must be installed. Try running wsl --status.

9 : The check: is WSL installed?
Produced the following warning: exit status 0xffffffff

**The Docker engine runs inside a WSL environment. Therefore WSL must be installed. Try running wsl --status.

10 : The check: are WSL distros installed?
Produced the following warning: prereq failed: is WSL installed?**

**The Docker engine uses several WSL distributions. Therefore these must be installed.

11 : The check: is the VM time synchronized?
Produced the following warning: prereq failed: is WSL installed?**

**The VM time must be in sync with the host, otherwise Docker Desktop will not work correctly.

Ensure you are using a modern WSL 2 kernel (see "wsl --update"). If this problem persists,
try manually synchronizing the VM clock with "sudo hwclock -s".

12 : The check: can a VM be started?
Produced the following warning: prereq failed: is WSL installed?**

The Docker engine runs inside a Linux VM. Therefore we must be able to start Virtual Machines.

13 : The check: is the LinuxKit VM running?
Produced the following warning: prereq failed: is the application running?

The Docker engine runs inside a Linux VM. Therefore the VM must be running.

14 : The check: are the LinuxKit services running?
Produced the following warning: prereq failed: is the LinuxKit VM running?

The Docker engine runs inside a Linux VM as a service. Therefore the services must have started.

15 : The check: is the Docker engine running?
Produced the following warning: prereq failed: are the LinuxKit services running?

The Docker engine manages all containers and images on the host. Check the dockerd.log to see why it failed to start.

16 : The check: does the Docker API work?
Produced the following warning: prereq failed: is the Docker engine running?

If the Docker API is not available from the host then Docker Desktop will not work correctly.

17 : The check: do Docker networks overlap with host IPs?
Produced the following warning: prereq failed: does the Docker API work?

If the subnet used by a Docker network overlaps with an IP used by the host, then containers
won't be able to contact the overlapping IP addresses.

Try configuring the IP address range used by networks: in your docker-compose.yml.
See https://docs.docker.com/compose/compose-file/compose-file-v2/#ipv4_address-ipv6_address

Please investigate the following 3 issues:

1 : The test: is there available VM disk space?
Failed with: failed to retrieve the size information from ''

Verify the available VM disk space. Try running docker system prune to clean up.

2 : The test: is WSL installed?
Failed with: exit status 0xffffffff

The Docker engine runs inside a WSL environment. Therefore WSL must be installed. Try running wsl --status.**

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions