Megosztás a következőn keresztül:


WMI-tulajdonság hozzáadása

A WMI-osztályok tulajdonságai egy felügyelt objektum adatait írják le. Például Handle, ProcessIdés PageFaults a Win32_Process osztály tulajdonságaiként vannak definiálva, és egy operációsrendszer-folyamat aspektusait írják le. További információért lásd: Tulajdonságszolgáltató írása.

Tulajdonság meghatározása az MOF-ban

A WMI-tulajdonságok az objektum egy aspektusát vagy állapotát jelölik. Ahelyett, hogy olyan metódusokat hoz létre, amelyek egyszerűen lekérnek és beállítanak egy értéket, létrehozhat egy tulajdonságot. A Win32_NetworkAdapterNetEnabled tulajdonsága például megjeleníti, hogy az adapter állapota engedélyezve vagy letiltva van-e. Azonban a Enable és a Disable metódusok valójában végrehajtják az adapter állapotának megváltoztatását.

Egy tulajdonságnak adattípussal kell rendelkeznie. A Win32_Process tulajdonság Handle adattípusa sztring, és a PageFaults adattípusa pedig uint32. Ha egy tulajdonságnak csak két állapota lehet, a tulajdonság adattípusa általában logikai.

A tulajdonság lehet tömb is. A biztonsági azonosító (SID) Win32_Trustee tulajdonsága például egy bájttömb (uint8), amely tartalmazza a SID-t. A tulajdonságok olyan beágyazott objektumokat tartalmazhatnak, amelyek egy másik WMI-osztály egy vagy több példányára hivatkoznak. A diszkrecionális hozzáférés-vezérlési lista (DACL) és a rendszerhozzáférés-vezérlési lista (SACL)Win32_SecurityDescriptortulajdonságai, például Win32_ACE objektumok tömbjei, amelyek a hozzáféréssel rendelkező csoportokat és fiókokat írják le. A Win32_SecurityDescriptorGroup tulajdonsága egyetlen Win32_Trustee-példányra mutató hivatkozást tartalmaz. További információ: Objektumok beágyazása egy osztályba.

Egy tulajdonság több minősítővel is rendelkezhet. Ezek a minősítők lehetnek Common Information Model (CIM) vagy WMI-minősítők, vagy bizonyos típusú osztályokra, például a teljesítményszámlálóra osztály minősítőkre. A minősítők a tulajdonság bizonyos aspektusait határozzák meg, például azt, hogy írásvédett-e, vagy ha nem módosítható egy adott jogosultság nélkül. Az Win32_SecurityDescriptorDACL tulajdonságba írni próbáló alkalmazásokhoz például a SeSecurityPrivilege és SeRestorePrivilegejogosultságok szükségesek. További információ: Minősítőhozzáadása.

Végül egy tulajdonságnak névvel kell rendelkeznie. Bármilyen tulajdonságot nevezhet el a szokásos programozási gyakorlat keretei között. Azonban két fő kivétel van. Először is nem használhat MOF-kulcsszót, például "osztály" tulajdonságnévként. Másodszor, nem használhat WQL-kulcsszavakat, például "csoport" tulajdonságnévként sem. Az MOF- és WQL-kulcsszavakról további információt MOF-adattípusok és WQL (WMI-hez készült SQL)című cikkben talál.

A C++ és a Felügyelt objektumformátum (MOF) kód esetében az osztály tulajdonságainak deklarálása az osztály deklarálásával egyidejűleg történik.

Tulajdonság definiálása

  • Adja meg a tulajdonság adattípusát, nevét, valamint egy opcionális alapértelmezett értéket és minősítőt az osztály leírásának kapcsos zárójelei között.

    class MyClass 
    {
        [key] string   strProp;
        sint32         dwProp1 = 21;
        uint32         dwProp2;
    };
    

    Az előző példában szereplő MyClass osztály három tulajdonsággal rendelkezik: egy karaktersztringgel, egy 32 bites aláírt egész számmal és egy 32 bites aláíratlan egész számmal. Minden tulajdonsághoz kis- és nagybetűket megkülönböztető név és MOF-adattípus tartozik.

    A Kulcs minősítő a sztringtulajdonságot az osztály egy példányát egyedileg azonosító kulcstulajdonságként határozza meg. További információ a minősítőkről: Minősítőhozzáadása.

Osztály létrehozása