wmi version of the disk quota (c sharp)

  • 2020-05-05 11:43:35
  • OfStack

using   System;  
using   System.Management;  
namespace   DiskQuota  
{  
          ///   < summary >  
Summary of           ///   Class1    
          ///   < /summary >  
          class   Class1  
          {  
                  ///   < summary >  
                  ///   application main entry point.  
                  ///   < /summary >  
                  [STAThread]  
                  static   void   Main(string[]   args)  
                  {  
                            try  
                            {  
                                      ManagementClass   c   =   new   ManagementClass("Win32_DiskQuota");  
                                      ManagementObject   quota   =   c.CreateInstance();  
                                      quota["Limit"]   =   400000000;  
                                      quota["WarningLimit"]   =   200000000;  
                                      //   Get   user   account   object  
                                      ManagementObject   account   =   new  
                                              ManagementObject("Win32_Account.Domain=TODAY20040216,Name=ASPNET");  
                                      account.Get();  
                                      //   get   disk   object  
                                      ManagementObject   disk   =   new  
                                              ManagementObject("Win32_LogicalDisk.DeviceId='F:'");  
                                      disk.Get();  
                                      quota["QuotaVolume"]   =   disk;  
                                      quota["User"]   =   account;  
                                      quota.Put();   //   commit  
                                      ManagementClass   c   =   new   ManagementClass("Win32_DiskQuota");  
                                      Console.WriteLine(c.SystemProperties);  
                                      foreach   (ManagementObject   o   in   c.GetInstances())  
                                              Console.WriteLine("Next   :   {0}",   o.Path);  
                            }  
                            catch(Exception   e)  
                            {  
                                      Console.WriteLine("error:"   +   e);  
                            }  
                  }  
          }  
}

Related articles: