// Copyright (c) 2000-2001 Microsoft Corporation, All Rights Reserved // FA.MOF // //=================================================================== #pragma namespace ("\\\\.\\Root\\Default") //************************************************************* //*** Registers Framework Provider *** //************************************************************* instance of __Win32Provider as $P { Name = "FrAssocSample"; ClsId = "{5D11C6F1-4B06-4bf8-954C-7C4E78E2F167}"; }; instance of __InstanceProviderRegistration { Provider = $P; SupportsGet = TRUE; SupportsPut = TRUE; SupportsDelete = TRUE; SupportsEnumeration = TRUE; QuerySupportLevels = {"WQL:UnarySelect"}; }; instance of __MethodProviderRegistration { Provider = $P; }; [Association, dynamic, provider("FrAssocSample")] class PhysicalDiskToLogicalDisk { [key] PhysicalFixedDisk ref Antecendent; [key] LogicalDisk ref Dependent; }; [Association, dynamic, provider("FrAssocSample")] class ThisComputerPhysicalFixedDisk { [key] ThisComputer ref GroupComponent; [key] PhysicalFixedDisk ref PartComponent; }; class PhysicalFixedDisk { [key] string ID; string Manufacturer; uint32 SizeInMeg; string MappedDriveLetter; }; class LogicalDisk { [key] string DriveLetter; string VolumeName; }; class ThisComputer { [key] string ComputerName; }; instance of PhysicalFixedDisk { ID = "PhysicalFixedDisk0"; Manufacturer = "VendorA"; SizeInMeg = 1024; MappedDriveLetter = "C:"; }; instance of PhysicalFixedDisk { ID = "PhysicalFixedDisk1"; Manufacturer = "VendorA"; SizeInMeg = 1024; MappedDriveLetter = "D:"; }; instance of PhysicalFixedDisk { ID = "PhysicalFixedDisk2"; Manufacturer = "VendorB"; SizeInMeg = 1024; // MappedDriveLetter // Assume this drive has no drive letter mapped }; instance of LogicalDisk { DriveLetter = "A:"; VolumeName = "MyFloppy"; }; instance of LogicalDisk { DriveLetter = "C:"; VolumeName = "MyFirstFixedDrive"; }; instance of LogicalDisk { DriveLetter = "D:"; VolumeName = "MyOtherFixedDrive"; }; instance of LogicalDisk { DriveLetter = "Q:"; VolumeName = "MyNetworkDrive"; }; instance of ThisComputer { ComputerName = "MyComputer"; };