Microsoft KB Archive/819064

= You Receive an &quot;Invalid Class&quot; Error Message When You Use a WDM Method =

Article ID: 819064

Article Last Modified on 12/3/2007

-

APPLIES TO


 * Microsoft Windows Server 2003, Web Edition
 * Microsoft Windows Server 2003, Standard Edition (32-bit x86)
 * Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
 * Microsoft Windows Server 2003, Enterprise x64 Edition
 * Microsoft Windows Small Business Server 2003 Premium Edition
 * Microsoft Windows Small Business Server 2003 Standard Edition

-





SYMPTOMS
In Windows Server 2003, when you run a Windows Driver Model (WDM) method, you may receive an &quot;Invalid Class&quot; (WBEM_E_INVALID_CLASS) error message from Windows Management Instrumentation (WMI).



CAUSE
This problem may occur if the method definition in the Managed Object Format (MOF) file contains an OUT parameter first, for example: [WmiMethodId(2), Implemented] void SampleMethod2([OUT] uint32 Output1,                  [IN]  uint32 Input1,                   [IN]  uint32 Input2  );



Hotfix Information
A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

http://go.microsoft.com/?linkid=6294451

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support

File Information
The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.   Date         Time   Version      Size     File name -  29-May-2003  08:24  5.2.3790.40  137,728  Wmiprov.dll 29-May-2003 08:24  5.2.3790.40  137,728  Wmisvc.dll



WORKAROUND
To work around this problem, change the order of the [IN] and [OUT] parameters. In the example described in the &quot;Cause&quot; section, change the parameters so that they use the following order: [WmiMethodId(1), Implemented] void SampleMethod1([IN] uint32 Input1,                   [IN]  uint32 Input2,                   [OUT] uint32 Output1); Note This workaround does not work in Microsoft Windows 2000. In Windows 2000, a problem exists when more than one [IN] parameter is used. If you are using Windows 2000, define the method with the [OUT] parameter first to work around this problem.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.



MORE INFORMATION
For more information about WMI, visit the following Microsoft Web site:

http://msdn2.microsoft.com/en-us/library/aa384642.aspx

For more information about WDM, visit the following Microsoft Web site:

http://www.microsoft.com/whdc/archive/wdm.mspx

Additional query words: wbem_e_invalid_class

Keywords: kbhotfixserver kbqfe kbbug kbfix kbqfe kbwinserv2003presp1fix KB819064

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.