Tips - Visual Basic

【TOP】

OSの情報を収集してみよう!
WMI(Windows Management Instrumentation)を用いることによって、システムの様々な情報を収集することができ、 .NET Framework には WMI に関連するクラスが System.Management 名前空間に実装されています。
オペレーティングシステムの情報は WMIクラス Win32_OperatingSystem に格納されています。
以下は Windows XP SP1 の情報を収集するコードとその結果です。
Sub Main() Console.WriteLine("********** Win32_OperatingSystemクラスのプロパティとその値 **********") 'WMIクラス「Win32_OperatingSystem」へのWMIクエリ(WQL)を作成する。 Dim strWQL As String = "Select * From Win32_OperatingSystem" '上記WQLを実行する検索用インスタンスを作成する。 Dim searcher As New System.Management.ManagementObjectSearcher(strWQL) 'クエリから返されるManagementObjectCollection全てについて(この場合は1つのみ) For Each mbo As System.Management.ManagementBaseObject In searcher.Get() '取得したManagementObjectのプロパティ全てについて名前と値を列挙する。 For Each prop As System.Management.PropertyData In mbo.Properties Console.WriteLine("{0}:{1}", prop.Name, prop.Value) Next Next End Sub
実行結果は以下のようになります。
********** Win32_OperatingSystemクラスのプロパティとその値 ********** BootDevice:\Device\HarddiskVolume1 BuildNumber:2600 BuildType:Uniprocessor Free Caption:Microsoft Windows XP Professional CodeSet:932 CountryCode:81 CreationClassName:Win32_OperatingSystem CSCreationClassName:Win32_ComputerSystem CSDVersion:Service Pack 1 CSName:KAZUMAPC CurrentTimeZone:540 Debug:False Description: Distributed:False EncryptionLevel:168 ForegroundApplicationBoost:2 FreePhysicalMemory:107792 FreeSpaceInPagingFiles:970368 FreeVirtualMemory:1078160 InstallDate:20030212215938.000000+540 LargeSystemCache:0 LastBootUpTime:20050109040818.725700+540 LocalDateTime:20050109101843.633000+540 Locale:0411 Manufacturer:Microsoft Corporation MaxNumberOfProcesses:4294967295 MaxProcessMemorySize:2097024 Name:Microsoft Windows XP Professional|C:\WINDOWS|\Device\Harddisk0\Partition1 NumberOfLicensedUsers: NumberOfProcesses:51 NumberOfUsers:3 Organization: OSLanguage:1041 OSProductSuite: OSType:18 OtherTypeDescription: PlusProductID: PlusVersionNumber: Primary:True ProductType:1 QuantumLength:0 QuantumType:0 RegisteredUser:kazuma SerialNumber:55384-012-4589736-##### ServicePackMajorVersion:1 ServicePackMinorVersion:0 SizeStoredInPagingFiles:1292196 Status:OK SuiteMask:272 SystemDevice:\Device\HarddiskVolume1 SystemDirectory:C:\WINDOWS\System32 SystemDrive:C: TotalSwapSpaceSize: TotalVirtualMemorySize:1815444 TotalVisibleMemorySize:523248 Version:5.1.2600 WindowsDirectory:C:\WINDOWS
【戻る】