Microsoft KB Archive/286803

From BetaArchive Wiki

WMI: WDM Provider Rejects Dynamic Arrays Of Zero Length

Q286803



The information in this article applies to:


  • Windows Management Instrumentation, version 1.5, used with:
    • the operating system: Microsoft Windows 2000





SYMPTOMS

The Windows Driver Model (WDM) Provider in Windows Management Instrumentation (WMI) rejects dynamic arrays of zero size. Any attempt to store an instance of an object that includes a dynamic array of zero size will result in an "Invalid Parameter" error.

As an example, the following MOF declares a variable length array.


class Test_DiagnosticsStatus
{
   datetime timeoflastrun;
   uint16   numberofresults;
   [read,WmiSizeIs("NumberOfResults")]
   Test_DiagnosticsResult DiagResults[];   // Varying array
}; 

The problem arises when the dynamic array (DiagResults[]) is of zero length.

DiagnosticsStatus = instance of Test_DiagnosticsStatus
{
   NumberOfResults = 0;
   TimeOfLastRun = "16010101000000.000000+000";
}; 

Any attempt to store the above instance (DiagnosticsStatus) would result in an "Invalid Parameter" error (0x80041008).



RESOLUTION

A supported fix is now available from Microsoft, but it is only intended to correct the problem described in this article and should be applied only to systems experiencing this specific problem.

To resolve this problem, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:


http://support.microsoft.com/directory/overview.asp

NOTE: In special cases, charges that are normally incurred for support calls may be canceled, if a Microsoft Support Professional determines that a specific update will resolve your problem. Normal support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English-language version of this fix should have the following file attributes or later:

   Date        Time      Version       Size     File name    Platform
   ------------------------------------------------------------------
   02/13/2001  19:36:52  1.50.1085.49  110,660  Wmiprov.dll  Intel 



How to Use the Hotfix Installer

NOTE: You can use this method only for Intel-based computers with Windows 2000 installed.

  1. Copy the Q286803.exe hotfix file to a local folder on your computer or to a share on your network.
  2. Run the Q286803.exe file and follow the directions.
  3. Restart your computer.



STATUS

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



MORE INFORMATION

For additional information about how to obtain a hotfix for Windows 2000 Datacenter Server, click the article number below to view the article in the Microsoft Knowledge Base:

Q265173 The Datacenter Program and Windows 2000 Datacenter Server Product

For additional information about how to install multiple hotfixes with only one reboot, click the article number below to view the article in the Microsoft Knowledge Base:

Q296861 Use QChain.exe to Install Multiple Hotfixes with One Reboot

For additional information about how to install Windows 2000 and Windows 2000 hotfixes at the same time, click the article number below to view the article in the Microsoft Knowledge Base:

Q249149 Installing Microsoft Windows 2000 and Windows 2000 Hotfixes

Additional query words:

Keywords : kbDSupport kbWin2000PreSP3Fix
Issue type : kbbug
Technology : kbWMISearch kbAudDeveloper


Last Reviewed: June 20, 2001
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.