共用方式為


編譯當地語系化的 MOF 檔案

您必須編譯主要 MOF 檔案,才能建立語言中性和特定語言的 MOF 檔案。

在命令提示字元中輸入下列命令,以編譯主要 MOF 檔案。

mofcomp -MOF:Lnmof.mof -MFL:Lsmof.mfl -Amendment:MS_409 Mastermof.mof

當您執行此命令時,MOF 編譯器會從原始 Mastermof.mof 檔案建立兩個 MOF 檔案。 MOF 編譯器會產生語言中性版本 Lnmof.mof,其中會移除所有語言特定專案。 也會建立第二個語言特定版本 Lsmof.mof;此檔案只包含 Mastermof.mof 檔案中以 修改 限定詞類別標示的專案。

下列程式碼範例顯示產生的語言中性 MOF 檔案內容 (Lnmof.mof) 。

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

Instance of __Namespace
{
  Name = "TEST";
};
#pragma namespace("\\\\.\\root\\TEST")

[LOCALE(1033)] 
class myclass
{
  [key] string Name;
  uint64 Value;
  uint64 Timestamp;
};

下列程式碼範例顯示產生的語言特定 MOF 檔案內容, (Lsmof.mfl) 。

#pragma namespace("\\\\.\\root\\TEST")
instance of __namespace{ name="ms_409";};
#pragma namespace("\\\\.\\root\\TEST\\ms_409")

[Description("Localized version of MyClass for American English") :
    Amended, LOCALE(0x409)] 

class myclass
{
    [DisplayName("User Name") : Amended,
    Description("The Name property contains the name of the user") : 
    Amended, key]
     string Name;

    [DisplayName("Time Stamp") : Amended,
    Description("This property shows when the object was created") : 
    Amended] 
     uint64 Timestamp;
};

使用 修改 的限定詞編譯 MOF 檔案只會產生個別的語言中性與特定語言 MOF 檔案;CIM 存放庫不會以新的類別資訊更新。 您必須使用 MOF 編譯器來編譯第一個編譯所產生的兩個 MOF 檔案,然後 WMI 才能取得任何類別資訊。

當您編譯主要 MOF 檔案時,只有 具有修改 過的類別限定詞會移至語言特定的 MOF 檔案。 沒有 修改 類別的限定詞不會當地語系化,而且只存在於語言中性 MOF 檔案中的基本類別定義中。 如果當地語系化的描述無法使用,則非區域化限定詞可用於預設描述。

您可以使用 pragma 增修條款 命令,而不是將 [修改 ] 指定為 MOF 編譯器的參數。 這其中一個選項相當於要求 MOF 檔案的語言特定和語言中性版本。 如果您使用 pragma 增修條款命令或 修改 過的命令列選項,則必須在命令提示字元使用 -MFL-MOF 選項來指定輸出檔的名稱。

注意

MOF 編譯器產生的語言中性 MOF 檔案包含地區設定識別碼的十進位對等專案,即使此值是以十六進位輸入也一樣。 在上述範例中,編譯器已將值0x409轉換成 Lnmof.mof 輸出檔案的十進位數 1033。