WMI) (參考

MOF ref 關鍵字描述物件路徑,並對應至VT_BSTR自動化類型。 物件路徑可以是伺服器和命名空間的完整路徑,或相同命名空間中另一個物件的相對路徑。 您可以使用 ref 關鍵字將兩個或多個類別連結在一起。 WMI 支援兩種類型的物件路徑,可用來定義 WMI 中的一般或特定路徑。

ref關鍵字的主要用途是減少存在於 WMI 存放庫中的物件之間的傳輸時間和編碼方式。 您也可以使用 ref 關鍵字來建立兩個類別之間的關聯。 如需詳細資訊,請參閱 宣告關聯類別。 如果參考的專案位於相同的 MOF 檔案內,請使用別名來初始化 ref 值。 如需詳細資訊,請參閱 建立別名

注意

ref 關鍵字套用至索引鍵屬性時,您可以區分物件字串值的物件參考,而不是取值。

 

MOF 支援弱型別和強型別物件路徑的概念。 弱型別的物件路徑會指向未指定類別的物件,並使用 ref 索引鍵字搭配 OBJECT 關鍵字。 強型別物件指向特定類別的物件,並使用 ref 搭配類別名稱。 下列範例描述可指向任何類別或類別實例的弱型別 RefToAnyClass參考,以及只能指向ClassX類別或實例的RefToClassX參考:

class MyClass
{
    object ref RefToAnyClass;       // Weakly typed
    ClassX ref RefToClassX;         // Strongly typed
};

下列範例描述兩個實例和參考先前實例的關聯物件:

#pragma namespace("\\\\.\\root")

instance of __Namespace
{
    Name = "WMI" ;
} ;

#pragma namespace("\\\\.\\root\\WMI")

Class A{
    [key] string aKey;
};

Class C{
    [key] string cKey;
};

// The following class creates an association 
// between the "A" class and the "C" class
    [Association] Class B{
    [key] A ref aRef;
    [Key, Min(1)] C ref cRef;
};

instance of a
{
    aKey = "This is the key for the A class";
};

instance of c
{
    cKey = "This is the key for the c class";
};