lunedì 13 agosto 2012

WMI – Windows Management Instrumentation

 

Windows Management Instrumentation (WMI) is the infrastructure for management data and operations on Windows-based operating systems. You can write WMI scripts or applications to automate administrative tasks on remote computers but WMI also supplies management data to other parts of the operating system and products, for example System Center Operations Manager, formerly Microsoft Operations Manager (MOM), or Windows Remote Management.

Classes details: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394554%28v=vs.85%29.aspx

Post related to: Win32 Classes
Schema classes included in the root\cimv2 namespace. These are the primary classes for working with Windows-based operating systems.

In this post you learn how to use Win32 OS Classes.

Usage of MgmtClassGen.exe http://msdn.microsoft.com/en-us/library/2wkebaxa%28v=vs.110%29.aspx

The Management Strongly Typed Class Generator tool enables you to quickly generate an early-bound managed class for a specified Windows Management Instrumentation (WMI) class. The generated class simplifies the code you must write to access an instance of the WMI class.

This tool is automatically installed with Visual Studio and with the Windows SDK. To run the tool, we recommend that you use the Visual Studio Command Prompt or the Windows SDK Command Prompt (CMD Shell). These utilities enable you to run the tool easily, without navigating to the installation folder. For more information, see Visual Studio and Windows SDK Command Prompts.

  • If you have Visual Studio installed on your computer: On the taskbar, click Start, click All Programs, click Visual Studio, click Visual Studio Tools, and then click Visual Studio Command Prompt.

    -or-

    If you have the Windows SDK installed on your computer: On the taskbar, click Start, click All Programs, click the folder for the Windows SDK, and then click Command Prompt (or CMD Shell).

  • At the command prompt, type the following:

    mgmtclassgen WMIClass [options]

To earn time I made a simple method which do it for you.

public void GenerateWMIClasses()
{


    string[] fileLines = {
                    "Win32_1394Controller",
                    "Win32_1394ControllerDevice",
                    "Win32_Account",
                    "Win32_AccountSID",
                    "Win32_ACE",
                    "Win32_ActionCheck",
                    "Win32_ActiveRoute",
                    "Win32_AllocatedResource",
                    "Win32_ApplicationCommandLine",
                    "Win32_ApplicationService",
                    "Win32_AssociatedBattery",
                    "Win32_AssociatedProcessorMemory",
                    "Win32_AutochkSetting",
                    "Win32_BaseBoard",
                    "Win32_BaseService",
                    "Win32_Battery",
                    "Win32_Binary",
                    "Win32_BindImageAction",
                    "Win32_BIOS",
                    "Win32_BootConfiguration",
                    "Win32_Bus",
                    "Win32_CacheMemory",
                    "Win32_CDROMDrive",
                    "Win32_CheckCheck",
                    "Win32_CIMLogicalDeviceCIMDataFile",
                    "Win32_ClassicCOMApplicationClasses",
                    "Win32_ClassicCOMClass",
                    "Win32_ClassicCOMClassSetting",
                    "Win32_ClassicCOMClassSettings",
                    "Win32_ClassInfoAction",
                    "Win32_ClientApplicationSetting",
                    "Win32_CodecFile",
                    "Win32_CollectionStatistics",
                    "Win32_COMApplication",
                    "Win32_COMApplicationClasses",
                    "Win32_COMApplicationSettings",
                    "Win32_COMClass",
                    "Win32_ComClassAutoEmulator",
                    "Win32_ComClassEmulator",
                    "Win32_CommandLineAccess",
                    "Win32_ComponentCategory",
                    "Win32_ComputerShutdownEvent",
                    "Win32_ComputerSystem",
                    "Win32_ComputerSystemEvent",
                    "Win32_ComputerSystemProcessor",
                    "Win32_ComputerSystemProduct",
                    "Win32_ComputerSystemWindowsProductActivationSetting",
                    "Win32_COMSetting",
                    "Win32_Condition",
                    "Win32_ConnectionShare",
                    "Win32_ControllerHasHub",
                    "Win32_CreateFolderAction",
                    "Win32_CurrentProbe",
                    "Win32_CurrentTime",
                    "Win32_DCOMApplication",
                    "Win32_DCOMApplicationAccessAllowedSetting",
                    "Win32_DCOMApplicationLaunchAllowedSetting",
                    "Win32_DCOMApplicationSetting",
                    "Win32_DefragAnalysis",
                    "Win32_DependentService",
                    "Win32_Desktop",
                    "Win32_DesktopMonitor",
                    "Win32_DeviceBus",
                    "Win32_DeviceChangeEvent",
                    "Win32_DeviceMemoryAddress",
                    "Win32_DeviceSettings",
                    "Win32_DFSNode",
                    "Win32_DFSNodeTarget",
                    "Win32_DFSTarget",
                    "Win32_Directory",
                    "Win32_DirectorySpecification",
                    "Win32_DiskDrive",
                    "Win32_DiskDrivePhysicalMedia",
                    "Win32_DiskDriveToDiskPartition",
                    "Win32_DiskPartition",
                    "Win32_DiskQuota",
                    "Win32_DisplayConfiguration",
                    "Win32_DisplayControllerConfiguration",
                    "Win32_DMAChannel",
                    "Win32_DriverForDevice",
                    "Win32_DriverVXD",
                    "Win32_DuplicateFileAction",
                    "Win32_Environment",
                    "Win32_EnvironmentSpecification",
                    "Win32_ExtensionInfoAction",
                    "Win32_Fan",
                    "Win32_FileSpecification",
                    "Win32_FloppyController",
                    "Win32_FloppyDrive",
                    "Win32_FontInfoAction",
                    "Win32_Group",
                    "Win32_GroupInDomain",
                    "Win32_GroupUser",
                    "Win32_HeatPipe",
                    "Win32_IDEController",
                    "Win32_IDEControllerDevice",
                    "Win32_ImplementedCategory",
                    "Win32_InfraredDevice",
                    "Win32_IniFileSpecification",
                    "Win32_InstalledSoftwareElement",
                    "Win32_IP4PersistedRouteTable",
                    "Win32_IP4RouteTable",
                    "Win32_IP4RouteTableEvent",
                    "Win32_IRQResource",
                    "Win32_JobObjectStatus",
                    "Win32_Keyboard",
                    "Win32_LaunchCondition",
                    "Win32_LoadOrderGroup",
                    "Win32_LoadOrderGroupServiceDependencies",
                    "Win32_LoadOrderGroupServiceMembers",
                    "Win32_LocalTime",
                    "Win32_LoggedOnUser",
                    "Win32_LogicalDisk",
                    "Win32_LogicalDiskRootDirectory",
                    "Win32_LogicalDiskToPartition",
                    "Win32_LogicalFileAccess",
                    "Win32_LogicalFileAuditing",
                    "Win32_LogicalFileGroup",
                    "Win32_LogicalFileOwner",
                    "Win32_LogicalFileSecuritySetting",
                    "Win32_LogicalMemoryConfiguration",
                    "Win32_LogicalProgramGroup",
                    "Win32_LogicalProgramGroupDirectory",
                    "Win32_LogicalProgramGroupItem",
                    "Win32_LogicalProgramGroupItemDataFile",
                    "Win32_LogicalShareAccess",
                    "Win32_LogicalShareAuditing",
                    "Win32_LogicalShareSecuritySetting",
                    "Win32_LogonSession",
                    "Win32_LogonSessionMappedDisk",
                    "Win32_LUID",
                    "Win32_LUIDandAttributes",
                    "Win32_ManagedSystemElementResource",
                    "Win32_MappedLogicalDisk",
                    "Win32_MemoryArray",
                    "Win32_MemoryArrayLocation",
                    "Win32_MemoryDevice",
                    "Win32_MemoryDeviceArray",
                    "Win32_MemoryDeviceLocation",
                    "Win32_MethodParameterClass",
                    "Win32_MIMEInfoAction",
                    "Win32_ModuleLoadTrace",
                    "Win32_ModuleTrace",
                    "Win32_MotherboardDevice",
                    "Win32_MountPoint",
                    "Win32_MoveFileAction",
                    "Win32_MSIResource",
                    "Win32_NamedJobObject",
                    "Win32_NamedJobObjectActgInfo",
                    "Win32_NamedJobObjectLimit",
                    "Win32_NamedJobObjectLimitSetting",
                    "Win32_NamedJobObjectProcess",
                    "Win32_NamedJobObjectSecLimit",
                    "Win32_NamedJobObjectSecLimitSetting",
                    "Win32_NamedJobObjectStatistics",
                    "Win32_NetworkAdapter",
                    "Win32_NetworkAdapterConfiguration",
                    "Win32_NetworkAdapterSetting",
                    "Win32_NetworkClient",
                    "Win32_NetworkConnection",
                    "Win32_NetworkLoginProfile",
                    "Win32_NetworkProtocol",
                    "Win32_NTDomain",
                    "Win32_NTEventlogFile",
                    "Win32_NTLogEvent",
                    "Win32_NTLogEventComputer",
                    "Win32_NTLogEventLog",
                    "Win32_NTLogEventUser",
                    "Win32_ODBCAttribute",
                    "Win32_ODBCDataSourceAttribute",
                    "Win32_ODBCDataSourceSpecification",
                    "Win32_ODBCDriverAttribute",
                    "Win32_ODBCDriverSoftwareElement",
                    "Win32_ODBCDriverSpecification",
                    "Win32_ODBCSourceAttribute",
                    "Win32_ODBCTranslatorSpecification",
                    "Win32_OnBoardDevice",
                    "Win32_OperatingSystem",
                    "Win32_OperatingSystemAutochkSetting",
                    "Win32_OperatingSystemQFE",
                    "Win32_OptionalFeature",
                    "Win32_OSRecoveryConfiguration",
                    "Win32_PageFile",
                    "Win32_PageFileElementSetting",
                    "Win32_PageFileSetting",
                    "Win32_PageFileUsage",
                    "Win32_ParallelPort",
                    "Win32_Patch",
                    "Win32_PatchFile",
                    "Win32_PatchPackage",
                    "Win32_PCMCIAController",
                    "Win32_Perf",
                    "Win32_PerfFormattedData",
                    "Win32_PerfFormattedData_ASP_ActiveServerPages",
                    "Win32_PerfFormattedData_ContentFilter_IndexingServiceFilter",
                    "Win32_PerfFormattedData_ContentIndex_IndexingService",
                    "Win32_PerfFormattedData_InetInfo_InternetInformationServicesGlobal",
                    "Win32_PerfFormattedData_ISAPISearch_HttpIndexingService",
                    "Win32_PerfFormattedData_MSDTC_DistributedTransactionCoordinator",
                    "Win32_PerfFormattedData_NTFSDRV_SMTPNTFSStoreDriver",
                    "Win32_PerfFormattedData_PerfDisk_LogicalDisk",
                    "Win32_PerfFormattedData_PerfDisk_PhysicalDisk",
                    "Win32_PerfFormattedData_PerfNet_Browser",
                    "Win32_PerfFormattedData_PerfNet_Redirector",
                    "Win32_PerfFormattedData_PerfNet_Server",
                    "Win32_PerfFormattedData_PerfNet_ServerWorkQueues",
                    "Win32_PerfFormattedData_PerfOS_Cache",
                    "Win32_PerfFormattedData_PerfOS_Memory",
                    "Win32_PerfFormattedData_PerfOS_Objects",
                    "Win32_PerfFormattedData_PerfOS_PagingFile",
                    "Win32_PerfFormattedData_PerfOS_Processor",
                    "Win32_PerfFormattedData_PerfOS_System",
                    "Win32_PerfFormattedData_PerfProc_FullImage_Costly",
                    "Win32_PerfFormattedData_PerfProc_Image_Costly",
                    "Win32_PerfFormattedData_PerfProc_JobObject",
                    "Win32_PerfFormattedData_PerfProc_JobObjectDetails",
                    "Win32_PerfFormattedData_PerfProc_Process",
                    "Win32_PerfFormattedData_PerfProc_ProcessAddressSpace_Costly",
                    "Win32_PerfFormattedData_PerfProc_Thread",
                    "Win32_PerfFormattedData_PerfProc_ThreadDetails_Costly",
                    "Win32_PerfFormattedData_PSched_PSchedFlow",
                    "Win32_PerfFormattedData_PSched_PSchedPipe",
                    "Win32_PerfFormattedData_RemoteAccess_RASPort",
                    "Win32_PerfFormattedData_RemoteAccess_RASTotal",
                    "Win32_PerfFormattedData_RSVP_ACSRSVPInterfaces",
                    "Win32_PerfFormattedData_RSVP_ACSRSVPService",
                    "Win32_PerfFormattedData_SMTPSVC_SMTPServer",
                    "Win32_PerfFormattedData_Spooler_PrintQueue",
                    "Win32_PerfFormattedData_TapiSrv_Telephony",
                    "Win32_PerfFormattedData_Tcpip_ICMP",
                    "Win32_PerfFormattedData_Tcpip_IP",
                    "Win32_PerfFormattedData_Tcpip_NBTConnection",
                    "Win32_PerfFormattedData_Tcpip_NetworkInterface",
                    "Win32_PerfFormattedData_Tcpip_TCP",
                    "Win32_PerfFormattedData_Tcpip_UDP",
                    "Win32_PerfFormattedData_TermService_TerminalServices",
                    "Win32_PerfFormattedData_TermService_TerminalServicesSession",
                    "Win32_PerfFormattedData_W3SVC_WebService",
                    "Win32_PerfRawData",
                    "Win32_PerfRawData_ASP_ActiveServerPages",
                    "Win32_PerfRawData_ContentFilter_IndexingServiceFilter",
                    "Win32_PerfRawData_ContentIndex_IndexingService",
                    "Win32_PerfRawData_InetInfo_InternetInformationServicesGlobal",
                    "Win32_PerfRawData_ISAPISearch_HttpIndexingService",
                    "Win32_PerfRawData_MSDTC_DistributedTransactionCoordinator",
                    "Win32_PerfRawData_NTFSDRV_SMTPNTFSStoreDriver",
                    "Win32_PerfRawData_PerfDisk_LogicalDisk",
                    "Win32_PerfRawData_PerfDisk_PhysicalDisk",
                    "Win32_PerfRawData_PerfNet_Browser",
                    "Win32_PerfRawData_PerfNet_Redirector",
                    "Win32_PerfRawData_PerfNet_Server",
                    "Win32_PerfRawData_PerfNet_ServerWorkQueues",
                    "Win32_PerfRawData_PerfOS_Cache",
                    "Win32_PerfRawData_PerfOS_Memory",
                    "Win32_PerfRawData_PerfOS_Objects",
                    "Win32_PerfRawData_PerfOS_PagingFile",
                    "Win32_PerfRawData_PerfOS_Processor",
                    "Win32_PerfRawData_PerfOS_System",
                    "Win32_PerfRawData_PerfProc_FullImage_Costly",
                    "Win32_PerfRawData_PerfProc_Image_Costly",
                    "Win32_PerfRawData_PerfProc_JobObject",
                    "Win32_PerfRawData_PerfProc_JobObjectDetails",
                    "Win32_PerfRawData_PerfProc_Process",
                    "Win32_PerfRawData_PerfProc_ProcessAddressSpace_Costly",
                    "Win32_PerfRawData_PerfProc_Thread",
                    "Win32_PerfRawData_PerfProc_ThreadDetails_Costly",
                    "Win32_PerfRawData_PSched_PSchedFlow",
                    "Win32_PerfRawData_PSched_PSchedPipe",
                    "Win32_PerfRawData_RemoteAccess_RASPort",
                    "Win32_PerfRawData_RemoteAccess_RASTotal",
                    "Win32_PerfRawData_RSVP_ACSRSVPInterfaces",
                    "Win32_PerfRawData_RSVP_ACSRSVPService",
                    "Win32_PerfRawData_SMTPSVC_SMTPServer",
                    "Win32_PerfRawData_Spooler_PrintQueue",
                    "Win32_PerfRawData_TapiSrv_Telephony",
                    "Win32_PerfRawData_Tcpip_ICMP",
                    "Win32_PerfRawData_Tcpip_IP",
                    "Win32_PerfRawData_Tcpip_NBTConnection",
                    "Win32_PerfRawData_Tcpip_NetworkInterface",
                    "Win32_PerfRawData_Tcpip_TCP",
                    "Win32_PerfRawData_Tcpip_UDP",
                    "Win32_PerfRawData_TermService_TerminalServices",
                    "Win32_PerfRawData_TermService_TerminalServicesSession",
                    "Win32_PerfRawData_W3SVC_WebService",
                    "Win32_PhysicalMedia",
                    "Win32_PhysicalMemory",
                    "Win32_PhysicalMemoryArray",
                    "Win32_PhysicalMemoryLocation",
                    "Win32_PingStatus",
                    "Win32_PnPAllocatedResource",
                    "Win32_PnPDevice",
                    "Win32_PnPEntity",
                    "Win32_PnPSignedDriver",
                    "Win32_PnPSignedDriverCIMDataFile",
                    "Win32_PointingDevice",
                    "Win32_PortableBattery",
                    "Win32_PortConnector",
                    "Win32_PortResource",
                    "Win32_POTSModem",
                    "Win32_POTSModemToSerialPort",
                    "Win32_PowerManagementEvent",
                    "Win32_Printer",
                    "Win32_PrinterConfiguration",
                    "Win32_PrinterController",
                    "Win32_PrinterDriver",
                    "Win32_PrinterDriverDll",
                    "Win32_PrinterSetting",
                    "Win32_PrinterShare",
                    "Win32_PrintJob",
                    "Win32_PrivilegesStatus",
                    "Win32_Process",
                    "Win32_Processor",
                    "Win32_ProcessStartTrace",
                    "Win32_ProcessStartup",
                    "Win32_ProcessStopTrace",
                    "Win32_ProcessTrace",
                    "Win32_Product",
                    "Win32_ProductCheck",
                    "Win32_ProductResource",
                    "Win32_ProductSoftwareFeatures",
                    "Win32_ProgIDSpecification",
                    "Win32_ProgramGroup",
                    "Win32_ProgramGroupContents",
                    "Win32_ProgramGroupOrItem",
                    "Win32_Property",
                    "Win32_ProtocolBinding",
                    "Win32_Proxy",
                    "Win32_PublishComponentAction",
                    "Win32_QuickFixEngineering",
                    "Win32_QuotaSetting",
                    "Win32_Refrigeration",
                    "Win32_Registry",
                    "Win32_RegistryAction",
                    "Win32_ReliabilityRecords",
                    "Win32_ReliabilityStabilityMetrics",
                    "Win32_RemoveFileAction",
                    "Win32_RemoveIniAction",
                    "Win32_ReserveCost",
                    "Win32_ScheduledJob",
                    "Win32_SCSIController",
                    "Win32_SCSIControllerDevice",
                    "Win32_SecurityDescriptor",
                    "Win32_SecurityDescriptorHelper",
                    "Win32_SecuritySetting",
                    "Win32_SecuritySettingAccess",
                    "Win32_SecuritySettingAuditing",
                    "Win32_SecuritySettingGroup",
                    "Win32_SecuritySettingOfLogicalFile",
                    "Win32_SecuritySettingOfLogicalShare",
                    "Win32_SecuritySettingOfObject",
                    "Win32_SecuritySettingOwner",
                    "Win32_SelfRegModuleAction",
                    "Win32_SerialPort",
                    "Win32_SerialPortConfiguration",
                    "Win32_SerialPortSetting",
                    "Win32_ServerConnection",
                    "Win32_ServerFeature",
                    "Win32_ServerSession",
                    "Win32_Service",
                    "Win32_ServiceControl",
                    "Win32_ServiceSpecification",
                    "Win32_ServiceSpecificationService",
                    "Win32_Session",
                    "Win32_SessionConnection",
                    "Win32_SessionProcess",
                    "Win32_SettingCheck",
                    "Win32_ShadowBy",
                    "Win32_ShadowContext",
                    "Win32_ShadowCopy",
                    "Win32_ShadowDiffVolumeSupport",
                    "Win32_ShadowFor",
                    "Win32_ShadowOn",
                    "Win32_ShadowProvider",
                    "Win32_ShadowStorage",
                    "Win32_ShadowVolumeSupport",
                    "Win32_Share",
                    "Win32_ShareToDirectory",
                    "Win32_ShortcutAction",
                    "Win32_ShortcutFile",
                    "Win32_ShortcutSAP",
                    "Win32_SID",
                    "Win32_SIDandAttributes",
                    "Win32_SMBIOSMemory",
                    "Win32_SoftwareElement",
                    "Win32_SoftwareElementAction",
                    "Win32_SoftwareElementCheck",
                    "Win32_SoftwareElementCondition",
                    "Win32_SoftwareElementResource",
                    "Win32_SoftwareFeature",
                    "Win32_SoftwareFeatureAction",
                    "Win32_SoftwareFeatureCheck",
                    "Win32_SoftwareFeatureParent",
                    "Win32_SoftwareFeatureSoftwareElements",
                    "Win32_SoundDevice",
                    "Win32_StartupCommand",
                    "Win32_SubDirectory",
                    "Win32_SystemAccount",
                    "Win32_SystemBIOS",
                    "Win32_SystemBootConfiguration",
                    "Win32_SystemConfigurationChangeEvent",
                    "Win32_SystemDesktop",
                    "Win32_SystemDevices",
                    "Win32_SystemDriver",
                    "Win32_SystemDriverPnPEntity",
                    "Win32_SystemEnclosure",
                    "Win32_SystemLoadOrderGroups",
                    "Win32_SystemLogicalMemoryConfiguration",
                    "Win32_SystemMemoryResource",
                    "Win32_SystemNetworkConnections",
                    "Win32_SystemOperatingSystem",
                    "Win32_SystemPartitions",
                    "Win32_SystemProcesses",
                    "Win32_SystemProgramGroups",
                    "Win32_SystemResources",
                    "Win32_SystemServices",
                    "Win32_SystemSetting",
                    "Win32_SystemSlot",
                    "Win32_SystemSystemDriver",
                    "Win32_SystemTimeZone",
                    "Win32_SystemTrace",
                    "Win32_SystemUsers",
                    "Win32_TapeDrive",
                    "Win32_TCPIPPrinterPort",
                    "Win32_TemperatureProbe",
                    "Win32_Thread",
                    "Win32_ThreadStartTrace",
                    "Win32_ThreadStopTrace",
                    "Win32_ThreadTrace",
                    "Win32_TimeZone",
                    "Win32_TokenGroups",
                    "Win32_TokenPrivileges",
                    "Win32_Trustee",
                    "Win32_TypeLibraryAction",
                    "Win32_UninterruptiblePowerSupply",
                    "Win32_USBController",
                    "Win32_USBControllerDevice",
                    "Win32_USBHub",
                    "Win32_UserAccount",
                    "Win32_UserDesktop",
                    "Win32_UserInDomain",
                    "Win32_UserProfile",
                    "Win32_UTCTime",
                    "Win32_VideoConfiguration",
                    "Win32_VideoController",
                    "Win32_VideoSettings",
                    "Win32_VoltageProbe",
                    "Win32_Volume",
                    "Win32_VolumeChangeEvent",
                    "Win32_VolumeQuota",
                    "Win32_VolumeQuotaSetting",
                    "Win32_VolumeUserQuota",
                    "Win32_WindowsProductActivation",
                    "Win32_WMIElementSetting",
                    "Win32_WMISetting" };


    foreach (string p in fileLines)
    {
        System.Diagnostics.Process pr = new System.Diagnostics.Process();
        System.Diagnostics.Process.Start("C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\Bin\\MgmtClassGen.exe", string.Format("{0} /l cs /p {1}", p.Trim(), ".\\" + p.Trim() + ".cs"));
    }

}

public List<object> GetWMIobject(string wmi_class_name, string pathclasses)
{
    List<object> lsreturn = new List<object>();

    CSharpCodeProvider c = new CSharpCodeProvider();
    CompilerParameters cp = new CompilerParameters() { GenerateInMemory = true };
    cp.ReferencedAssemblies.Add("system.dll");
    cp.ReferencedAssemblies.Add("system.core.dll");
    cp.ReferencedAssemblies.Add("system.management.dll");


    CompilerResults cr1 = c.CompileAssemblyFromFile(cp, string.Format("{0}\\{1}.cs", pathclasses, wmi_class_name));
    System.Reflection.Assembly a = cr1.CompiledAssembly;


    ManagementClass MC = new ManagementClass(wmi_class_name);
    var items = MC.GetInstances();
    foreach (var item in items)
    {
        try
        {
            object[] objt = new object[1];
            objt[0] = item;
            object o = a.CreateInstance("ROOT.CIMV2.win32." + wmi_class_name.Replace("Win32_", string.Empty), true, BindingFlags.Default, null, objt, System.Globalization.CultureInfo.CurrentCulture, null);
            lsreturn.Add(o);
        }
        catch (Exception)
        { }


    }
    return lsreturn;
}

       

Retrieving info from OS is now simple…

     Utils.Utils Utility = new Utils.Utils();
     
     //Eseguire una sola volta per la generazione dei file .cs contenenti le classi Win32_*
     Utility.GenerateWMIClasses();
     
     //Ricevo le informazioni per la batteria
     var Battery = Utility.GetWMIobject("Win32_Battery", ".\\");

     //o per esempio le schede di rete
     var Networks = Utility.GetWMIobject("Win32_NetworkAdapter", ".\\");

 

I hope this post help you Sorriso

Nessun commento: