Click here to Skip to main content
11,796,774 members (80,088 online)
Rate this: bad
Please Sign up or sign in to vote.
I have .Net WMI Provider extension.

I am Installing my provider using InstallUtil.
If I remove my assembly without uninstalling using InstallUtil.
During installation the MOF file is getting created successfully but it's failing to compile.

It giving error like this...

An error occurred while processing item 2 defined on lines 12 - 22 in file C:\Windows\system32\wbem\AMIDiagProvider_v4.0.30319.mof:
Compiler returned error 0x80041026Error Number: 0x80041026, Facility: WMI
Description: Class has instances
An exception occurred during the Commit phase of the System.Management.Instrumentation.WMIManagementInstaller installer.
System.Management.Instrumentation.WmiProviderInstallationException: MOF Compilation failed
An exception occurred during the Commit phase of the installation. This exception will be ignored and installation will continue.

I have to do resolve this problem.
Here is my MOF file..
#pragma autorecover

#pragma namespace("\\\\.\\root")

instance of __Namespace
  Name = "cimv2";
#pragma namespace("\\\\.\\root\\cimv2")

class WMI_extension : __Win32Provider
	string Name = NULL;
	string CLSID = "{2A7B042D-578A-4366-9A3D-154C0498458E}";
	uint32 Version = 1;
	string HostingModel = "Decoupled:COM";
	string SecurityDescriptor = NULL;
	string AssemblyPath;
	string AssemblyName;
	string CLRVersion;
instance of WMI_extension
	AssemblyName = "AMIDiagProvider, Version=, Culture=neutral, PublicKeyToken=5a8ca95a6684f5be";
	AssemblyPath = "file:///C:/Windows/Microsoft.Net/assembly/GAC_64/AMIDiagProvider/v4.0_2.0.0.1__5a8ca95a6684f5be/AMIDiagProvider.dll";
	CLRVersion = "v4.0.30319";
	CLSID = "{2A7B042D-578A-4366-9A3D-154C0498458E}";
	HostingModel = "LocalSystemHost:CLR";
	Name = "AMIDiagProvider, Version=, Culture=neutral, PublicKeyToken=5a8ca95a6684f5be";
instance of __InstanceProviderRegistration
	provider = "Wmi_Extension.Name=\"AMIDiagProvider, Version=, Culture=neutral, PublicKeyToken=5a8ca95a6684f5be\"";
	SupportsDelete = TRUE;
	SupportsEnumeration = TRUE;
	SupportsGet = TRUE;
	SupportsPut = TRUE;
instance of __MethodProviderRegistration
	provider = "Wmi_Extension.Name=\"AMIDiagProvider, Version=, Culture=neutral, PublicKeyToken=5a8ca95a6684f5be\"";
[dynamic(TRUE) : ToInstance , provider("AMIDiagProvider, Version=, Culture=neutral, PublicKeyToken=5a8ca95a6684f5be") , singleton(TRUE)]
class AMI_Win_QueryManager
	[read(TRUE)] string creationTime;
	[static(TRUE) , implemented(TRUE)] boolean ExecuteQuery([ID(0) , in(TRUE)] string XMLQuery,[ID(1) , out(TRUE)] string XMLResult);
Posted 8-Mar-11 21:02pm
Devel81 at 4-Mar-15 4:35am
Did you ever fixed the problem? I have the same problem with a WMI Provider Extension. It worked great with .Net 3.5 but when changing to 4.0 it throws the same error when installing on Win 2k12 R2. Even a totally new WMI Provider Extension using .Net 4.0 throws this error.
Debojyoti Majumder at 21-Apr-15 2:48am
We re-wrote the module in .NET, at that point of time I have not found any good solution apart from that. The module was not so big and that's why I think I was able to do that.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Abhinav S 379
1 OriginalGriff 360
2 Maciej Los 360
3 CPallini 295
4 KrunalRohit 280
0 OriginalGriff 2,032
1 Maciej Los 1,725
2 KrunalRohit 1,310
3 CPallini 1,055
4 ppolymorphe 883

Advertise | Privacy | Mobile
Web02 | 2.8.151002.1 | Last Updated 9 Mar 2011
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100