dw_robert
asked on
How to resolve: wmic exception error code 0x80020009, failure in formatengine.cpp
Hi,
When I try to execute any command using wmic, I get an exception with error code = 0x80020009. I've run wmdiag.exe and it shows no problems. I've appended partial output from trying to execute the "process" command using the "/trace:ON" option. Any help would be greatly appreciated.
Thanks!
Operating system: Windows Server 2003
Anti-virus: Kaspersky
RAM: 32 Gigs
CPU Name: Intel Xeon 5110
Partial output from executing "wmic /trace:ON process":
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IWbemObjectTextSrc::GetTex t(0, -, WMI_OBJECT_TEXT_CIM_DTD_2_ 0, -, -)
Line: 413 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: IEnumWbemClassObject->Next (WBEM_INFI NITE, 1, -, -)
Line: 446 File: d:\nt\admin\wmi\wbem\tools \wmic\exec engine.cpp
SUCCESS: CoCreateInstance(CLSID_Fre eThreadedD OMDocument , NULL, CLSCTX_INPROC_SER
VER, IID_IXMLDOMDocument2, -)
Line: 198 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: IXMLDOMDocument::loadXML(- , -)
Line: 229 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: CoCreateInstance(CLSID_XSL Template, NULL, CLSCTX_SERVER, IID_IXSLTempla
te, -)
Line: 3219 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: CoCreateInstance(CLSID_Fre eThreadedD OMDocument , NULL, CLSCTX_SERVER,IID
_IXMLDOMDocument2, -)
Line: 3242 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: IXSLDOMDocument2::put_asyn c(VARIANT_ FALSE)
Line: 3254 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: IXSLDOMDocument2::load(L"C :\WINDOWS\ system32\w bem\textta ble.xsl", -)
Line: 3269 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: IXSTemplate::putref_styles heet(-)
Line: 3283 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: IXSTemplate::createProcess or(-)
Line: 3295 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: IXSProcessor::put_input(-)
Line: 3332 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
SUCCESS: IXSProcessor::put_output(- )
Line: 3359 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
FAIL: IXSProcessor::tranform(-)
Line: 3373 File: d:\nt\admin\wmi\wbem\tools \wmic\form atengine.c pp
ERROR:
Code = 0x80020009
Description = Exception occurred.
Facility = Dispatch
When I try to execute any command using wmic, I get an exception with error code = 0x80020009. I've run wmdiag.exe and it shows no problems. I've appended partial output from trying to execute the "process" command using the "/trace:ON" option. Any help would be greatly appreciated.
Thanks!
Operating system: Windows Server 2003
Anti-virus: Kaspersky
RAM: 32 Gigs
CPU Name: Intel Xeon 5110
Partial output from executing "wmic /trace:ON process":
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IWbemObjectTextSrc::GetTex
Line: 413 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IEnumWbemClassObject->Next
Line: 446 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: CoCreateInstance(CLSID_Fre
VER, IID_IXMLDOMDocument2, -)
Line: 198 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IXMLDOMDocument::loadXML(-
Line: 229 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: CoCreateInstance(CLSID_XSL
te, -)
Line: 3219 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: CoCreateInstance(CLSID_Fre
_IXMLDOMDocument2, -)
Line: 3242 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IXSLDOMDocument2::put_asyn
Line: 3254 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IXSLDOMDocument2::load(L"C
Line: 3269 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IXSTemplate::putref_styles
Line: 3283 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IXSTemplate::createProcess
Line: 3295 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IXSProcessor::put_input(-)
Line: 3332 File: d:\nt\admin\wmi\wbem\tools
SUCCESS: IXSProcessor::put_output(-
Line: 3359 File: d:\nt\admin\wmi\wbem\tools
FAIL: IXSProcessor::tranform(-)
Line: 3373 File: d:\nt\admin\wmi\wbem\tools
ERROR:
Code = 0x80020009
Description = Exception occurred.
Facility = Dispatch
Windows Management Instrumentation Command line (WMIC) has a limit of what it can do.
Your best bet to resolve is to place a question in the scripting zones and programming zones to come up with an alternative to the command line shell. Power shell might overcome these limitations. There are a lot of good code writers that can help you come up with an alternative to WMIC.
Please review the following Technet article for verification:
http://www.tech-archive.net/Archive/WinXP/microsoft.public.windowsxp.wmi/2004-11/0007.html
Your best bet to resolve is to place a question in the scripting zones and programming zones to come up with an alternative to the command line shell. Power shell might overcome these limitations. There are a lot of good code writers that can help you come up with an alternative to WMIC.
Please review the following Technet article for verification:
http://www.tech-archive.net/Archive/WinXP/microsoft.public.windowsxp.wmi/2004-11/0007.html
ASKER
ChiefIT,
Thanks for your response. However, I should add more information about what I'm trying to do, and why I've been looking at WMIC.
I'm writing a Perl script that will go through the currently running Windows processes and operate on certain ones that it identifies. I want to use WMIC to get a list of those processes from the Perl script. So I don't think Powershell is an option. (Am I wrong?)
I've tested WMIC to see if it will get the list of processes, and it works properly on all of our servers except for one. That server is one we've used for testing, and, as a result, its configuration seems to be messed up. So I'm trying to figure out how to get that server working with WMIC.
I'm open to finding alternatives to WMIC to getting a list of processes, but I haven't been able to find anything that provides all the information we need. In particular, I need to get not only the executable path and process ID, but also the commandline parameters. The Perl module Win32::Process::Info provides the first two things but not the third, and, in any case, it's not clear it would be very reliable.
Thanks for your response. However, I should add more information about what I'm trying to do, and why I've been looking at WMIC.
I'm writing a Perl script that will go through the currently running Windows processes and operate on certain ones that it identifies. I want to use WMIC to get a list of those processes from the Perl script. So I don't think Powershell is an option. (Am I wrong?)
I've tested WMIC to see if it will get the list of processes, and it works properly on all of our servers except for one. That server is one we've used for testing, and, as a result, its configuration seems to be messed up. So I'm trying to figure out how to get that server working with WMIC.
I'm open to finding alternatives to WMIC to getting a list of processes, but I haven't been able to find anything that provides all the information we need. In particular, I need to get not only the executable path and process ID, but also the commandline parameters. The Perl module Win32::Process::Info provides the first two things but not the third, and, in any case, it's not clear it would be very reliable.
Do you need a list of ALL processes on the machine you are querying.
Have you looked at the MSDN VBS scripts for processes under the WMI components?
http://msdn.microsoft.com/en-us/library/aa394599(VS.85).aspx
http://msdn.microsoft.com/en-us/library/aa394599(VS.85).aspx
ASKER
ChiefIT,
Yes, I need a list of all processes.
I looked at the link you sent for the VBS scripts. Something like them, translated into Perl, might work. However, they're more involved than wmic, so I was hoping to get by with it. Also, I need something that will run on both 32- and 64-bit Windows Server 2003. I thought using wmic would be more portable, though I don't know for sure. Do you have any idea how portable the scripts would be?
Thanks for your help.
Yes, I need a list of all processes.
I looked at the link you sent for the VBS scripts. Something like them, translated into Perl, might work. However, they're more involved than wmic, so I was hoping to get by with it. Also, I need something that will run on both 32- and 64-bit Windows Server 2003. I thought using wmic would be more portable, though I don't know for sure. Do you have any idea how portable the scripts would be?
Thanks for your help.
OK, I stink at scripting:
So, let's get a moderator on here to put you in the correct zones for a script that will work for you and is scalable enought to work for you.
So, let's get a moderator on here to put you in the correct zones for a script that will work for you and is scalable enought to work for you.
dw_robert:
We know what's causing the error, but many code writers probably haven't see the error. So, I suspect this is causing the lack of participation. The code writers may be intimidated by the error you are seeing.
It might be best to consider re-writing your question without the error and asking for help code that does what you want.
I would like to bring your attention to a command line shell called tasklist:
http://technet.microsoft.com/en-us/library/bb491010.aspx
It will list the processes running, and I think you can run this on a remote computer.
Also there are a lot of third party tools that run in the background what will display the processes of any given client. They use these for monitoring for viruses and spyware.
We know what's causing the error, but many code writers probably haven't see the error. So, I suspect this is causing the lack of participation. The code writers may be intimidated by the error you are seeing.
It might be best to consider re-writing your question without the error and asking for help code that does what you want.
I would like to bring your attention to a command line shell called tasklist:
http://technet.microsoft.com/en-us/library/bb491010.aspx
It will list the processes running, and I think you can run this on a remote computer.
Also there are a lot of third party tools that run in the background what will display the processes of any given client. They use these for monitoring for viruses and spyware.
Hi, this VBS code will list all processes on a computer. The VBS needs to be executed with something like
cscript.exe MyScript.vbs <computername>
I'm not sure if PERL uses CScript.exe to execute scripts, but see if it helps.
Also, not sure if you've tried this, but on the machine that fails, check that DCOM is enabled, and make sure it has the correct permissions to allow COM objects to run. Click Start --> Settings --> Control Panel --> Administrative Tools --> Component Services
Then expand Component Services --> Computers --> My Computer
Right click My Computer, go to Properties. On the Default Properties tab, check the Enable Distributed COM on this computer box.
Then on the COM Security tab, click Edit Default... under Launch and Activation Permissions and make sure the Local Administrators group has Full Access.
Then make sure that your domain account is in the Local Administrators group in Computer Management. Restart the system and try again.
Also, just double check the registry setting for DCOM is enabled:
HKLM\Software\Microsoft\OL E\
String value: EnableDCOM
should be Y
Regards,
Rob.
cscript.exe MyScript.vbs <computername>
I'm not sure if PERL uses CScript.exe to execute scripts, but see if it helps.
Also, not sure if you've tried this, but on the machine that fails, check that DCOM is enabled, and make sure it has the correct permissions to allow COM objects to run. Click Start --> Settings --> Control Panel --> Administrative Tools --> Component Services
Then expand Component Services --> Computers --> My Computer
Right click My Computer, go to Properties. On the Default Properties tab, check the Enable Distributed COM on this computer box.
Then on the COM Security tab, click Edit Default... under Launch and Activation Permissions and make sure the Local Administrators group has Full Access.
Then make sure that your domain account is in the Local Administrators group in Computer Management. Restart the system and try again.
Also, just double check the registry setting for DCOM is enabled:
HKLM\Software\Microsoft\OL
String value: EnableDCOM
should be Y
Regards,
Rob.
On Error Resume Next
strComputer = WScript.Arguments.Item(0)
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcess = objWMIService.ExecQuery("Select Name from Win32_Process")
For Each objProcess In colProcess
WScript.Echo objProcess.Name
Next
If Err.Number <> 0 Then WScript.Echo "An error occurred getting processes from " & strComputer
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Well that's odd, but good news! You can request that this question be deleted, or you could accept your last comment as the answer....
Regards,
Rob.
Regards,
Rob.
@Rob:
I don't think it's as odd as you might think. The error he was running into stemmed from the limitations of the command line shell.
review this comment for clarification:
12/30/09 12:48 PM, ID: 26149588
I think the author needed a script that can do more than the WMIC. If he starts a few more services, I'll bet the error pops back up again.
I don't think it's as odd as you might think. The error he was running into stemmed from the limitations of the command line shell.
review this comment for clarification:
12/30/09 12:48 PM, ID: 26149588
I think the author needed a script that can do more than the WMIC. If he starts a few more services, I'll bet the error pops back up again.
ASKER
Rob and ChiefIT,
A couple of comments. First, I wasn't clear that I need more than a list of running tasks: for what I'm doing, I also need the entire command line, including the command line parameters. I looked at tasklist, but so far as I can tell, it doesn't provide the parameters, which is why I didn't use it. Also, it's not clear to me the problem was due to a limitation on WMIC. I tried it on several machines, and the only machine it didn't work on was one that was running fewer processes than the others, and it also failed when I ran it in safe mode. Further, I wasn't able to get ANY WMIC commands to work.
In any case, thanks for all the good information and suggestions. I'm using WMIC because I want to get up and running as quickly as possible, and because it looks like it's portable. But I may eventually switch to a Perl version of Rob's VB script.
A couple of comments. First, I wasn't clear that I need more than a list of running tasks: for what I'm doing, I also need the entire command line, including the command line parameters. I looked at tasklist, but so far as I can tell, it doesn't provide the parameters, which is why I didn't use it. Also, it's not clear to me the problem was due to a limitation on WMIC. I tried it on several machines, and the only machine it didn't work on was one that was running fewer processes than the others, and it also failed when I ran it in safe mode. Further, I wasn't able to get ANY WMIC commands to work.
In any case, thanks for all the good information and suggestions. I'm using WMIC because I want to get up and running as quickly as possible, and because it looks like it's portable. But I may eventually switch to a Perl version of Rob's VB script.
Hi, in my VBScript code, instead of these lines
Set colProcess = objWMIService.ExecQuery("S elect Name from Win32_Process")
For Each objProcess In colProcess
WScript.Echo objProcess.Name
Next
if you use this
Set colProcess = objWMIService.ExecQuery("S elect Name,CommandLine from Win32_Process")
For Each objProcess In colProcess
WScript.Echo objProcess.Name & " - " & objProcess.CommandLine
Next
does that give you enough info to get the command line arguments?
Regards,
Rob.
Set colProcess = objWMIService.ExecQuery("S
For Each objProcess In colProcess
WScript.Echo objProcess.Name
Next
if you use this
Set colProcess = objWMIService.ExecQuery("S
For Each objProcess In colProcess
WScript.Echo objProcess.Name & " - " & objProcess.CommandLine
Next
does that give you enough info to get the command line arguments?
Regards,
Rob.
ASKER
Rob,
Thanks for the suggestion. I have WMIC working now, so that's what I'm using. I may see about switching to your method eventually, however, and, if I do, I'll let you know if your most recent suggestion works.
Steven
Thanks for the suggestion. I have WMIC working now, so that's what I'm using. I may see about switching to your method eventually, however, and, if I do, I'll let you know if your most recent suggestion works.
Steven
Sure. Well I don't know PERL, so I can't help you there....
Regards,
Rob.
Regards,
Rob.
I am glad to see things are working for you.
Programming is not my cup of tea.
So, I am no further use here.
Thanks Rob, for stopping in.
I am checking out now.
Programming is not my cup of tea.
So, I am no further use here.
Thanks Rob, for stopping in.
I am checking out now.
ASKER