Informace o Configuration Manager souborů MOF vlastních akcí
V Configuration Manager jsou akce nasazení operačního systému definovány v souboru MOF (Managed Object Format) %ProgramFiles%\Microsoft Configuration Manager\bin\i386\_tasksequenceprovider.mof.
Při vytváření vlastní akce musíte vytvořit soubor MOF, který deklaruje vlastní akci. Potom pomocí Mofcomp.exe přidáte změny do poskytovatele serveru SMS. Další informace najdete v tématu Vytvoření souboru MOF pro vlastní akci Configuration Manager.
Správce nakonfiguruje vlastní akci definovanou souborem MOF pomocí vlastního ovládacího prvku akce. Další informace najdete v tématu Informace o Configuration Manager vlastních akcích.
Obsah souboru MOF
Vlastní akce je odvozena od SMS_TaskSequence_Action serverové třídy služby WMI. Deklarace souboru MOF obsahuje definici třídy a různé kvalifikátory pro příkazový řádek, proměnné pořadí úkolů, kategorii a umístění sestavení ovládacího prvku vlastní akce.
Vlastnosti deklarované ve třídě, s výjimkou těch s kvalifikátorem CommandLineArg
, jsou během nasazování klienta k dispozici jako proměnné pořadí úkolů. Další informace najdete v tématu Použití proměnných pořadí úkolů ve spuštěném Configuration Manager pořadí úkolů.
Obor názvů pro vlastní akci je \\root\SMS_Site_SITECODE. Při kompilaci souboru MOF se vlastní akce stane podřízeným objektem serverové třídy služby WMI SMS_TaskSequence_Action.
Poznámka
Příklad MOF najdete v akci pořadí úkolů MOF, která je deklarována v _tasksequenceprovider.mof.
Oddíl souboru MOF pro deklaraci vlastní akce bude vypadat podobně jako v následujícím příkladu:
[ 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;
};
Kompletní MOF také určuje obor názvů a další informace.
Kompletní mof pro tuto ukázku najdete v tématu Vytvoření souboru MOF pro Configuration Manager vlastní akci.
Příkazový řádek
Příkazový řádek pro akci je popsán v kvalifikátoru CommandLine
třídy. Definuje aplikaci, která je volána, a různé argumenty, které lze zadat. Pro každý argument příkazového řádku existuje CommandLineArg
kvalifikátor třídy pro argument odpovídající vlastnosti třídy.
CommandLine
obvykle má tvar:
CommandLine("smsswd.exe /run:%1 Application.exe %2 %3")
Smsswd.exe slouží ke spuštění programu v rámci balíčku. Vyžaduje následující argumenty:
Argument | Popis |
---|---|
/run:%1 | Identifikuje balíček, ve který se aplikace nachází. %1 je identifikátor balíčku (vlastnost SMS_Package serverová třídaPackageID služby WMI). |
Application.exe | Vlastní aplikace akcí, která se provádí. |
%2 – %n | Jeden nebo více argumentů příkazového řádku pro Application.exe. |
Náhradní řetězce příkazového řádku, %1, %2 atd., jsou definovány kvalifikátorem CommandLineArg
třídy. Následující příklad deklaruje %1.
[TaskSequencePackage, CommandLineArg(1)]
string PackageIDForApplicationExe;
Pomocí vlastního ovládacího prvku akce můžete ke konfiguraci identifikátoru balíčku použít PackageIDForApplicationExe
vlastnost .
Poznámka
Vlastnosti deklarované pomocí kvalifikátoru CommandLineArg
nejsou během nasazování klienta k dispozici jako proměnné pořadí úkolů.
Kategorie akce
Akce může být přidružena ke konkrétní kategorii v rozevírací nabídce editoru pořadí úkolů pomocí kvalifikátoru ActionCategory
třídy.
Poznámka
Nepoužívejte kategorii, kterou už používá jiná akce.
Syntaxe je:
ActionCategory{CategoryName,ActionOrder,CategoryOrder}
CategoryName
Název kategorie.
ActionOrder
Pořadí akcí v rámci kategorie.
CategoryOrder
Pořadí kategorií ve všech kategoriích.
Výchozí Configuration Manager kategorií, do kterých můžete přidat akci, jsou:
Obecné
Disky
User State (Stav uživatele)
Obrázky
Ovladače
Možnosti
Novou kategorii můžete také vytvořit zadáním nové kategorie v kvalifikátoru
ActionCategory
třídy. Například následující soubor MOF vytvoří novou kategorii s názvem Moje vlastní kategorie. Akce je umístěna na druhém místě v kategorii a kategorie je na pátém místě celkově.ActionCategory{"My Custom Category",2,5"},
Actionname
Kvalifikátor ActionName
třídy definuje název ovládacího prvku vlastní akce. Kvalifikátor má následující syntaxi:
ActionName{"Assembly", "Namespace.Properties.Resources", "Control"}
Assembly
Sestavení, které obsahuje ovládací prvek akce.
Namespace.Properties.Resources
Obor názvů pro prostředek, který obsahuje zobrazené řetězce názvů akcí. Další informace najdete v tématu Vytvoření Configuration Manager vlastního ovládacího prvku akce.
Control
Ovládací prvek, který obsahuje prostředky řetězce.
Uživatelské rozhraní akce
Kvalifikátor ActionUI
třídy definuje umístění sestavení a tříd, které jsou používány akcí. Kvalifikátor má následující syntaxi:
ActionUI{"Assembly","Namespace", "Control", "Option control"}
Assembly
Sestavení, které obsahuje ovládací prvek akce.
Namespace
Obor názvů, ve kterém se ovládací prvek akce nachází.
Control
Ovládací prvek akce zobrazený v editoru pořadí úkolů. Je hostitelem stránky ovládacího prvku možnosti.
Option control
Stránka sloužící ke správě možností akcí v editoru pořadí úkolů
Více ovládacích karet lze implementovat zahrnutím více názvů tříd ovládacích prvků oddělených čárkami. Příklad:
ActionUI{"Assembly","Namespace", "Control1", "Control2", "Control3", "Option control"}
Proměnné akcí
K VariableName
přepsání výchozího názvu proměnné pro vlastnost se používá kvalifikátor.
Vlastnost třídy lze definovat jako proměnnou pořadí úkolů přidáním kvalifikátoru VariableName
třídy. Ve výše uvedeném příkladu je vlastností MessageTimeout
proměnná akce s názvem RebootTimeout
.
Pokud je VariablePrefix
použit kvalifikátor třídy, mají proměnné předponu s hodnotou kvalifikátoru třídy.
Další informace o použití proměnných najdete v tématu Použití proměnných pořadí úkolů ve spuštěném Configuration Manager pořadí úkolů.
Vlastnosti
Kvalifikátory
Pro vlastnosti MOF je možné použít několik kvalifikátorů. Běžně se používají následující:
Kvalifikátor | Popis |
---|---|
CommandLineArg | Vlastnost, která by měla být vložena do příkazového řádku |
Not_Null | Pro tuto vlastnost je vyžadována hodnota. |
Mapa hodnot | Určuje seznam povolených řetězcových hodnot. |
Rozsah hodnot | Určuje rozsah povolených hodnot (int polí). |
RequiredIfNull | Hodnota této vlastnosti je vyžadována, pokud je jiná vlastnost null. |
TaskSequencePackage | Identifikuje vlastnost jako identifikátor balíčku. |
Název_proměnné | Určuje jiný název vlastnosti v prostředí pořadí úkolů. |
AllowedLen | Určuje minimální a maximální počet znaků v řetězci. |
SuccessCodes | Určuje jeden nebo více návratových kódů ze spustitelného souboru, který označuje úspěch. |
Omezení
U vlastností třídy je možné použít běžná omezení kvalifikátoru. Například ve výše uvedeném příkladu nemohou být
null
argumenty příkazového řádku . Další informace najdete v tématu Windows Management Instrumentation (WMI) SDK.Ujistěte se, že jsou názvy vlastností a kvalifikátory synchronizované mezi souborem MOF, vlastním ovládacím prvku akce a klientskou aplikací. Názvy vlastností se musí shodovat s případná omezení. Pokud je například požadována
int
vlastnost a musí být v rozsahu 1 až 512, pak by soubor MOF měl mítNot_Null
kvalifikátor aValueRange
, vlastní ovládací prvek by měl zajistit, že je vlastnost nastavená a v rozsahu, a klientská aplikace by měla hodnotu před použitím ověřit.
Viz taky
Informace o Configuration Manager vlastních akcích
Vytvoření Configuration Manager vlastního ovládacího prvku akce
Vytvoření souboru MOF pro vlastní akci Configuration Manager
Použití proměnných pořadí úkolů ve spuštěném pořadí úkolů Configuration Manager
Informace o klientských aplikacích Configuration Manager vlastních akcí