WMI에서 설치된 Windows 버전에 대한 정보를 얻으려고합니다. 대부분의 필드가 작동합니다. 운영체제 "Name"과 "Version"을 얻을 수 있습니다. 둘 다 Win32_OperatingSystem 객체의 필드입니다.WMI Win32_OperatingSystem OSArchitecture 필드에서 예외가 발생합니다.
그러나 다른 필드 "OSArchitecture"는 예외 ("찾을 수 없음")를 생성합니다.
strScope = "\\" + strServer + "\root\CIMV2"
searcher = New ManagementObjectSearcher(strScope, "SELECT * FROM Win32_OperatingSystem")
For Each mo In searcher.Get
strOSName = mo("Name")
strOSVersion = mo("Version")
strOSArchitecture = mo("OSArchitecture")
strStatus = mo("Status")
strLastBoot = mo("LastBootUpTime")
Next
문서는 필드가 존재 에게서는 있다고하고 문자열입니다
http://msdn.microsoft.com/en-us/library/aa394239(VS.85).aspx
어떤 아이디어? 당신은 질문 (아닌 실제 코드)에 간단한 오타 것을 확인했습니다 이제
strOSArchitecture = mo("OSArchitecture")
:
strOSArchitecture = mo("Architecture")
있었어야 :
어리석은 질문일지도 모릅니다 ... win32 OS에서 쿼리를 실행하고 있습니까? x64 일 경우 여기에 없을 수도 있습니다. – cyberzed
32 비트 Windows 7에서 실행 중입니다. –