views:

198

answers:

1

I need to be able to find, for all users on a given remote machine, those users' disk quotas and actual disk usage. I need to be able to do this reporting in a C# application. (Well, technically a DLL plugin for an app I've already built; but that's irrelevant here.)

  • The remote machine is not on the same network, however, the application executing the app is able to supply the credentials.
  • WMI is perfectly acceptable; I just cannot find (after looking for over 3 hours now) the exact incantation needed. (I'm also not a WMI pro; if you post a WMI solution, please frame it in the requisite C#/.NET System.Management.* objects.)
+2  A: 

The WMI class is Win32_DiskQuota. Edit: I found a VB.NET sample which may help you.

Or you can try to do this using P/Invoke (link goes to the P/Invoke wiki, where you may find some of the signatures). A pointer to start with quotas is the following CodeProject article: http://www.codeproject.com/KB/system/DiskQuota.aspx

Lucero
The VB.NET sample was almost exactly what I'd needed. The other links (except pinvoke.net) I'd already been through fruitlessly. That sample, converted and adapted (boy was that some bad code in places!) worked perfectly. Thank you.
John Rudy