This file lists the directories and files associated with the NT Shell Disk Quota project. Directories are shown in upper case; files in lower case. [BrianAu - 09/24/96] Directory tree: \NT\SHELL\DSKQUOTA\ COMMON CONTROL PROXY UI DSKQUOTA - Top level directory for DSKQUOTA project. dirs Required by BUILD. files.txt This file. makefil0 Use with NMAKE to run the MIDL and MC compilers. This generates the proxy/stub code for IDiskQuotaUser and generates the binary message file for dqmsg.mc. If you make changes to either dqmsg.mc or iuser.idl, run this. COMMON - Contains sources common to control, proxy and ui components autolock.h A mutex lock mechanism that automatically releases the mutex when the object goes out of scope. debug.cpp debug.h DebugMsg and Assert macros and associated functions. dqguids.h GUIDS that public clients need to know about. dqiuser.h Header generated by MIDL compiler from proxy\iuser.idl dqmsg.h Header generated by MC compiler from dqmsg.mc. dqmsg.mc Message compiler source file. Contains message strings. dqmsg.rc Required to build MC compiler products. dqpublic.h Principle public header. This where all public interfaces are declared. dskquota.cpp Contains DllMain, DllCanUnloadNow etc. Also global variable definitions. dskquota.def Linker definition file for dskquota.dll. dskquota.h A client of the IDiskQuotaControl object interface need only include this header. dskquota.rc Main resource file. Handles inclusion of all required resources. dskquota.rcv Version resource for dskquota.dll. dskquota.reg REGINI script for setting up registry for dskquota.dll dynarray.cpp dynarray.h Dynamic arrays based on the DPA and DSA implementations in comctl32. except.h Declarations for C++ exception classes. factory.cpp factory.h OLE class factory for creating initial IDiskQuotaControl interface. guidsp.h Private GUIDs. Not for public use. makefile The makefile BUILD requires. makefile.inc Make instructions to build the message resource binary from dqmsg.mc. msg00001.bin Product of the MC compiler from dqmsg.mc. olealloc.cpp olealloc.h Overloads global new and delete. Provides heap allocation tracking. precomp.hxx Precompiled header. private.h General private stuff. Sort of a complement to dqpublic.h. regparam.cpp regparam.h Classes for handling registry settings used by the DLL. Provides support for automatic value validations, and addition of missing registry entries. shellinc.h Includes required shell headers. sources Required by BUILD. utils.cpp utils.h General stuff that doesn't fit anywhere else. CONTROL - Contains sources specific to "control" component. The "control" component is a set of OLE objects that perform the actual management of quota information without any UI elements. connect.cpp connect.h Implementation for OLE connection point interfaces. Used by quota controller for user name change notifications. control.cpp control.h Implementation for IDiskQuotaControl interface. This is the quota control object that the client instantiates. A control object is instantiated for each volume inspected. fsobject.cpp fsobject.h Abstraction hierarchy for file system objects. Abstractions are provided for volume vs. directory and remote vs. local. This is to hide any peculiarities from the quota controller. makefile Required by BUILD. precomp.hxx Precompiled header. sidcache.cpp sidcache.h Implementation for the SID/Name cache. Manages the cache's data and index files. sidname.cpp sidname.h Implementation for the SID/Name resolver. This object uses a background thread to resolve user SID's to their account name and place the results in the SID/name cache. It also services user name requests by first looking in the cache. sources Required by BUILD. user.cpp user.h Implementation for IDiskQuotaUser interface. Each object represents a user record in the disk's quota info file. userbat.cpp userbat.h Implementation for IDiskQuotaUserBatch interface. Provides a method for batching updates to multiple user objects for improved performance. userenum.cpp userenum.h Implementation for IEnumDiskQuotaUsers interface. Provides an OLE enumerator object for retrieving user objects from a quota controller object. PROXY - Contains sources specific to "proxy" component. The proxy component "dksquopx.dll" is required to marshal the IDiskQuotaUser interface across thread boundaries. This is to support the SID/Name resolver's multi-threaded operation. dlldata.c iuser.h iuser_i.c iuser_p.c Generated by MIDL compiler from iuser.idl. iuser.idl MIDL interface definition for IDiskQuotaUser interface. dskquopx.def Linker definition file for dskquopx.dll dskquopx.rc Resource file for dskquopx.dll dskquopx.rcv Version resource for dskquopx.dll dskquopx.reg REGINI script for setting up registry for dskquopx.dll makefile Required by BUILD. sources Required by BUILD. UI - Contains sources specific to "ui" component. afxres.h To keep the MSVC App Studio happy. check.ico Check mark icon used in the details view and user property page. Will probably go away. Looks sort of cheezy. details.cpp details.h Code for the "details" view of quota information. dragdrop.cpp dragdrop.h Code for dragging and dropping the contents of the details listview into applications like Excel and Word. extinit.cpp extinit.h Implementation of IShellExtInit required for any shell extension (volume property page). makefile Required by BUILD. muser.ico Multiple user icon used in user property page for multi-user selection. "Borrowed" from musrmgr.exe. onepie.ico Miniature blue/red pie used for "quota" icon. Will probably change. precomp.hxx Precompiled header. prshtext.cpp prshtext.h Implementation of IShellPropSheetExt required for a property sheet extension (volume property page). reptgen.cpp reptgen.h Renders report for drag/drop and clipboard transfers from the contents of the Details view. Report is created on an IStream object in response to IDataObject::GetData(). resource.h Resource header generated by App Studio. sources Required by BUILD. traffic.avi AVI clip containing images for volume property sheet's traffic light. traffic.bmp trafficy.bmp trafficg.bmp trafficr.bmp Bitmaps used to create traffic.avi. ui.rc Main UI resource file generated by App Studio. ui.rc2 Manually created resource file for inclusion of AVI clip resource. undo.cpp undo.h Code for "undo" feature. Allows user to reverse user modifications and deletions. Provides only single-level undo. user.ico Single user icon used in user property page for single-user selection. "Borrowed" from musrmgr.exe. userprop.cpp userprop.h User property page implementation. Displayed when you select an item in the "details" view. volprop.cpp volprop.h Volume "Quota" property page implementation. xbytes.cpp xbytes.h Implementation for the edit-control/combo-box controls used in the property pages for setting byte values.