Udostępnij za pośrednictwem


Informacje o Configuration Manager niestandardowych plikach MOF akcji

W Configuration Manager akcje wdrażania systemu operacyjnego są definiowane w pliku MOF (Managed Object Format), %ProgramFiles%\Microsoft Configuration Manager\bin\i386\_tasksequenceprovider.mof.

Podczas tworzenia akcji niestandardowej należy utworzyć plik MOF, który deklaruje akcję niestandardową. Następnie użyjesz Mofcomp.exe, aby dodać zmiany do dostawcy programu SMS. Aby uzyskać więcej informacji, zobacz How to Create a MOF File for a Configuration Manager Custom Action (Jak utworzyć plik MOF dla Configuration Manager akcji niestandardowej).

Administrator konfiguruje akcję niestandardową zgodnie z definicją w pliku MOF przy użyciu niestandardowej kontrolki akcji. Aby uzyskać więcej informacji, zobacz Informacje o Configuration Manager akcjach niestandardowych.

Zawartość pliku MOF

Akcja niestandardowa pochodzi z klasy WMI serwera SMS_TaskSequence_Action. Deklaracja pliku MOF zawiera definicję klasy i różne kwalifikatory dla wiersza polecenia, zmiennych sekwencji zadań, kategorii i niestandardowej lokalizacji zestawu kontrolki akcji.

Właściwości zadeklarowane w klasie, z wyjątkiem właściwości z CommandLineArg kwalifikatorem, są dostępne jako zmienne sekwencji zadań podczas wdrażania klienta. Aby uzyskać więcej informacji, zobacz How to Use Task Sequence Variables in a Running Configuration Manager Task Sequence (Jak używać zmiennych sekwencji zadań w uruchomionej sekwencji zadań Configuration Manager).

Przestrzeń nazw akcji niestandardowej to \\root\SMS_Site_SITECODE. Po skompilowaniu pliku MOF akcja niestandardowa jest podrzędna klasy WMI serwera SMS_TaskSequence_Action.

Uwaga

Aby uzyskać przykład mof, zobacz akcję sekwencji zadań MOF zadeklarowaną w pliku _tasksequenceprovider.mof.

Sekcja pliku MOF dla deklaracji akcji niestandardowej będzie wyglądać podobnie do następującego przykładu:

[   CommandLine("smsswd.exe /run:%1 Application.exe /user:%2"),  
    VariablePrefix("MyCustomActionPrefix"),  
    ActionCategory("My Custom Action Category,7,1"),  
    ActionName{"ConfigMgrTSAction.dll", "ConfigMgrTSAction.Properties.Resources", "ConfigMgrTSAction"},  
    ActionUI{"ConfigMgrTSAction.dll", "ConfigMgrTSAction","ConfigMgrTSActionControl",   
"ConfigureTSActionOptions"}  
    ]  
class ConfigMgrTSActionControl : SMS_TaskSequence_Action  
{  
    [TaskSequencePackage, CommandLineArg(1)]  
    string          PackageIDForApplicationExe;  

    [Not_Null, CommandLineArg(2)]  
    string          User;  

    [VariableName("CustomLocation")]  
    string          Location;  

};  

Kompletny plik MOF określa również przestrzeń nazw i inne informacje,

Aby uzyskać pełną dokumentację mof dla tego przykładu, zobacz How to Create a MOF File for a Configuration Manager Custom Action (Jak utworzyć plik MOF dla Configuration Manager akcji niestandardowej).

Wiersz polecenia

Wiersz polecenia akcji jest opisany w kwalifikatorze CommandLine klasy. Definiuje ona wywoływana aplikację i różne argumenty, które można dostarczyć. Dla każdego argumentu wiersza polecenia istnieje CommandLineArg kwalifikator klasy dla argumentu dla odpowiedniej właściwości klasy.

CommandLine zazwyczaj przyjmuje formularz:

CommandLine("smsswd.exe /run:%1 Application.exe %2 %3")

Smsswd.exe jest używany do uruchamiania programu w pakiecie. Wymaga to następujących argumentów:

Argument Opis
/run:%1 Identyfikuje pakiet, w ramach który znajduje się aplikacja. %1 to identyfikator pakietu (właściwość klasy WMIPackageID serwera SMS_Package).
Application.exe Aplikacja akcji niestandardowej, która jest wykonywana.
%2 — %n Co najmniej jeden argument wiersza polecenia dla Application.exe.

Ciągi podstawiania wiersza polecenia% 1, %2 i tak dalej są definiowane przez CommandLineArg kwalifikator klas. Na przykład poniższa deklaracja to %1.

[TaskSequencePackage, CommandLineArg(1)]  
string          PackageIDForApplicationExe;  

Kontrolka akcji niestandardowej PackageIDForApplicationExe służy do konfigurowania identyfikatora pakietu za pomocą właściwości .

Uwaga

Właściwości zadeklarowane przy użyciu kwalifikatora CommandLineArg nie są dostępne jako zmienne sekwencji zadań podczas wdrażania klienta.

Kategoria akcji

Akcję można skojarzyć z określoną kategorią w menu rozwijanym edytora sekwencji zadań przy użyciu kwalifikatora ActionCategory klasy.

Uwaga

Nie używaj kategorii, która jest już używana przez inną akcję.

Składnia to:

ActionCategory{CategoryName,ActionOrder,CategoryOrder}

CategoryName
Nazwa kategorii.

ActionOrder
Kolejność akcji w kategorii.

CategoryOrder
Kolejność kategorii we wszystkich kategoriach.

Domyślne Configuration Manager kategorie, do których można dodać akcję:

  • Ogólne

  • Dysków

  • Stan użytkowników

  • Obrazów

  • Sterowniki

  • Ustawienia

    Możesz również utworzyć nową kategorię, określając nową kategorię w kwalifikatorze ActionCategory klas. Na przykład poniższy plik MOF tworzy nową kategorię o nazwie Moja kategoria niestandardowa. Akcja zajmuje drugie miejsce w kategorii, a kategoria zajmuje piąte miejsce w klasyfikacji generalnej.

    ActionCategory{"My Custom Category",2,5"},

ActionName

Kwalifikator ActionName klasy definiuje nazwę kontrolki akcji niestandardowej. Kwalifikator ma następującą składnię:

ActionName{"Assembly", "Namespace.Properties.Resources", "Control"}

Assembly
Zestaw zawierający kontrolkę akcji.

Namespace.Properties.Resources
Przestrzeń nazw zasobu zawierającego wyświetlane ciągi nazw akcji. Aby uzyskać więcej informacji, zobacz How to Create a Configuration Manager Custom Action Control (Jak utworzyć Configuration Manager niestandardowej kontrolki akcji).

Control
Kontrolka zawierająca zasoby ciągu.

Interfejs użytkownika akcji

Kwalifikator ActionUI klasy definiuje lokalizację zestawu i klas używanych przez akcję. Kwalifikator ma następującą składnię:

ActionUI{"Assembly","Namespace", "Control", "Option control"}

Assembly
Zestaw zawierający kontrolkę akcji.

Namespace
Przestrzeń nazw, w której znajduje się kontrolka akcji.

Control
Kontrolka akcji wyświetlana w edytorze sekwencji zadań. Hostuje stronę kontrolki opcji.

Option control
Strona używana do zarządzania opcjami akcji w edytorze sekwencji zadań.

Wiele kart kontrolek można zaimplementować, dołączając więcej nazw klas kontroli rozdzielonych przecinkami. Przykład:

ActionUI{"Assembly","Namespace", "Control1", "Control2", "Control3", "Option control"}

Zmienne akcji

Kwalifikator VariableName służy do zastępowania domyślnej nazwy zmiennej właściwości.

Właściwość klasy można zdefiniować jako zmienną sekwencji zadań, dodając VariableName kwalifikator klasy. W powyższym przykładzie właściwość MessageTimeout jest zmienną akcji o nazwie RebootTimeout.

VariablePrefix Jeśli jest używany kwalifikator klasy, zmienne są poprzedzone wartością kwalifikatora klasy.

Aby uzyskać więcej informacji na temat użycia zmiennych, zobacz How to Use Task Sequence Variables in a Running Configuration Manager Task Sequence (Jak używać zmiennych sekwencji zadań w sekwencji zadań uruchomionej Configuration Manager)

Właściwości

Kwalifikatory

Istnieje kilka kwalifikatorów, które można zastosować do właściwości MOF. Często używane są następujące elementy:

Kwalifikator Opis
CommandLineArg Właściwość, która powinna zostać wstawiona w wierszu polecenia
Not_null Dla tej właściwości jest wymagana wartość.
Mapa wartości Określa listę dozwolonych wartości ciągu.
ValueRange Określa zakres dozwolonych wartości (pola int).
RequiredIfNull Wartość jest wymagana dla tej właściwości, jeśli inna właściwość ma wartość null.
TaskSequencePackage Identyfikuje właściwość jako identyfikator pakietu.
Variablename Określa inną nazwę właściwości w środowisku sekwencji zadań.
AllowedLen Określa minimalną i maksymalną liczbę znaków w ciągu.
SuccessCodes Określa co najmniej jeden kod zwracany z pliku wykonywalnego, który wskazuje na powodzenie.

Ograniczenia

  • Regularne ograniczenia kwalifikatora mogą być stosowane do właściwości klasy. Na przykład w powyższym przykładzie argumentami wiersza polecenia nie może być null. Aby uzyskać więcej informacji, zobacz Zestaw SDK instrumentacji zarządzania windows (WMI).

  • Upewnij się, że nazwy właściwości i kwalifikatory są synchronizowane między plikiem MOF, niestandardową kontrolą akcji i aplikacją kliencką. Nazwy właściwości muszą być zgodne, a także wszelkie ograniczenia. Jeśli na przykład int właściwość jest wymagana i musi znajdować się w zakresie od 1 do 512, plik MOF powinien mieć Not_Null kwalifikator i ValueRange , kontrolka niestandardowa powinna upewnić się, że właściwość jest ustawiona i znajduje się w zakresie, a aplikacja kliencka powinna zweryfikować wartość przed jej użyciem.

Zobacz też

Informacje o Configuration Manager akcjach niestandardowych
How to Create a Configuration Manager Custom Action Control (Jak utworzyć kontrolkę akcji niestandardowej Configuration Manager)
Jak utworzyć plik MOF dla Configuration Manager akcji niestandardowej
Jak używać zmiennych sekwencji zadań w uruchomionej sekwencji zadań Configuration Manager
Informacje o Configuration Manager niestandardowych aplikacji klienckich akcji