Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Właściwości w klasach WMI opisują dane dotyczące obiektu zarządzanego. Na przykład Handle, ProcessIdi PageFaults są definiowane jako właściwości klasy Win32_Process i opisują aspekty procesu systemu operacyjnego. Aby uzyskać więcej informacji, zobacz Pisanie dostawcy właściwości.
Definiowanie właściwości w MOF
Właściwość WMI reprezentuje aspekt lub stan obiektu. Zamiast tworzyć metody, które po prostu pobierają i ustawiają wartość, można utworzyć właściwość. Na przykład właściwość NetEnabled obiektu Win32_NetworkAdapter wyświetla, czy stan adaptera jest włączony, czy wyłączony. Jednak metody Enable and Disable rzeczywiście wykonują akcję zmiany stanu adaptera.
Właściwość musi mieć typ danych. Typ danych właściwości Win32_ProcessHandle to ciąg. Natomiast typ danych PageFaults jest uint32. Jeśli właściwość może mieć tylko dwa stany, typ danych właściwości jest zwykle ustawiony na boolean.
Właściwość może być również tablicą. Na przykład właściwość identyfikatora zabezpieczeń (SID) Win32_Trustee jest tablicą bajtów (uint8), która zawiera identyfikator SID. Właściwości mogą zawierać obiekty osadzone, które odwołują się do co najmniej jednego wystąpienia innej klasy WMI. Dyskrecjonalne listy kontroli dostępu (DACL) i listy kontroli dostępu systemu (SACL) właściwości Win32_SecurityDescriptor, na przykład są tablicami obiektów Win32_ACE opisujących grupy i konta, które mają dostęp. Właściwość grupy w Win32_SecurityDescriptor zawiera odwołanie do jednej instancji Win32_Trustee. Aby uzyskać więcej informacji, zobacz Osadzanie obiektów w klasie.
Właściwość może mieć kilka kwalifikatorów. Te kwalifikatory mogą być wspólny model informacji (CIM) lub kwalifikatory WMI, lub mogą być specyficzne dla niektórych typów klas, na przykład kwalifikatory klasy licznika wydajności . Kwalifikatory określają pewien aspekt właściwości, na przykład, czy jest przeznaczona tylko do odczytu lub czy nie można jej zmienić bez określonego uprawnienia. Aplikacja, która próbuje zapisać do właściwościWin32_SecurityDescriptor DACL, wymaga na przykład uprawnień SeSecurityPrivilege i SeRestorePrivilege. Aby uzyskać więcej informacji, zobacz Dodawanie kwalifikatora.
Na koniec właściwość musi mieć nazwę. Możesz nazwać właściwość w granicach standardowej praktyki programistycznej. Istnieją jednak dwa główne wyjątki. Najpierw nie można użyć żadnego słowa kluczowego MOF, takiego jak "klasa", jako nazwy właściwości. Po drugie, nie można użyć żadnych słów kluczowych WQL, takich jak "group", jako nazwy właściwości. Aby uzyskać więcej informacji na temat słów kluczowych MOF i WQL, zobacz Typy Danych MOF i WQL (SQL dla WMI).
W przypadku kodu C++ i Managed Object Format (MOF) należy zadeklarować właściwości klasy w tym samym czasie, co deklaracja klasy.
Aby zdefiniować właściwość
Uwzględnij typ danych właściwości, nazwę i opcjonalną wartość domyślną oraz kwalifikator między nawiasami klamrowymi opisu klasy.
class MyClass { [key] string strProp; sint32 dwProp1 = 21; uint32 dwProp2; };Klasa MyClass w poprzednim przykładzie ma trzy właściwości: ciąg znaków, 32-bitową liczbę całkowitą ze znakiem i 32-bitową niepodpisaną liczbę całkowitą. Każda właściwość ma przypisaną niewrażliwą na wielkość liter nazwę oraz typ danych MOF.
Kwalifikator klucza definiuje właściwość string jako właściwość klucza, która jednoznacznie identyfikuje wystąpienie klasy. Aby uzyskać więcej informacji na temat kwalifikatorów, zobacz Dodawanie kwalifikatora.
Tematy pokrewne