哥们最近遇到点问题是关于WMI方面的.
需要这方面的知识:
各位哥们能否提供一些相关的资料,
简单示例,
要注意的问题等等,
小技巧等....
分不够的话,可以另开分贴.放分原则(回贴启示)
主不对题者-----------------无分,
左右而言它者---------------无分,
讨论相关问题者-------------无分,提供答案者-----------------有分,
提供思路者-----------------有分,
提供参考者-----------------有分.乱贴广告者-----------------鄙视!
冒充内行者-------------严重鄙视!

解决方案 »

  1.   

    本示例说明从托管代码使用 Windows Management Instrumentation (WMI) 的情况。自述文件位置
    有关更多信息,请参见位于 <SDK>v1.1\Samples\Technologies\Interop\Applications\WMI 的自述文件
      

  2.   

    好像看过很多朋友问这方面的问题.我也只知道用DirectShow可以实现.专门来做多媒体的.
      

  3.   

    1、 什么是WMI 
    WMI是英文Windows Management Instrumentation的简写,它的功能主要是:访问本地主机的一些信息和服务,可以管理远程计算机(当然你必须要拥有足够的权限),比如:重启,关机,关闭进程,创建进程等。
    2、 如何用WMI获得本地磁盘的信息? 
    首先要在VS.NET中创建一个项目,然后在添加引用中引用一个.net的装配件:System.Management.dll,这样你的项目才能使用WMI。代码如下:using System; 
    using System.Management;
    class Sample_ManagementObject 

     public static int Main(string[] args)  
     { 
      SelectQuery query=new SelectQuery("Select * From Win32_LogicalDisk"); 
      ManagementObjectSearcher searcher=new ManagementObjectSearcher(query); 
      foreach(ManagementBaseObject disk in searcher.Get()) 
      { 
       Console.WriteLine("\r\n"+disk["Name"] +" "+disk["DriveType"] + " " + disk["VolumeName"]); 
      }
    return 0;}
    }
    disk["DriveType"] 的返回值意义如下
    1 No type  
    2 Floppy disk  
    3 Hard disk  
    4 Removable drive or network drive  
    5 CD-ROM  
    6 RAM disk
    3、如何用WMI获得指定磁盘的容量? 
    using System; 
    using System.Management;// This example demonstrates reading a property of a ManagementObject. 
    class Sample_ManagementObject
    {
     public static int Main(string[] args)  
     {ManagementObject disk = new ManagementObject( 
       "win32_logicaldisk.deviceid=\"c:\""); 
      disk.Get(); 
      Console.WriteLine("Logical Disk Size = " + disk["Size"] + " bytes"); 
      Console.ReadLine();  
      return 0; 
     }
    }
    4、 如何列出机器中所有的共享资源? 
    using System; 
    using System.Management
    class TestApp { 
     [STAThread] 
     static void Main() 
     {ManagementObjectSearcher searcher = new ManagementObjectSearcher( 
       "SELECT * FROM Win32_share"); 
      foreach (ManagementObject share in searcher.Get()) 
      {Console.WriteLine(share.GetText(TextFormat.Mof)); 
      }
    }
      

  4.   

    MSDN/Platform SDK上有关于WMI的所有介绍
    .NET可以完整地使用WMI的所有功能但是需要注意WMI在微软各个OS之间的支持度有差别
    2000支持的98未必支持
    注意MSDN上的兼容性说明
      

  5.   

    通过WMI,可以获得系统的硬件信息和服务信息