Om Configuration Manager anpassade åtgärdsklientprogram
Aktivitetssekvensen i Configuration Manager utför anpassade åtgärdsåtgärder under klientdistributionen. Programmet kan vara en process, ett skript eller andra kommandon. Kraven för programmet definieras i en MOF-fil (Managed Object Format). Exempelkrav är driftmiljön, kommandoradsargument, egenskaper och returkoder. De läggs till i aktivitetssekvensmiljön när åtgärden bearbetas.
MOF-fil för anpassad åtgärd
MOF-filen för en anpassad åtgärd liknar följande exempel:
[ CommandLine("smsswd.exe /run:%1 abc.exe %2"),
: (custom ui control and category qualifiers for action)
]
class MyCustomAction : SMS_TaskSequence_Action
{
[TaskSequencePackage, CommandLineArg(1)]
string PackageIDForAbcExe;
[CommandLineArg(2), AllowedLen("1-32000")]
string AbcCommandLineArgs;
[SuccessCodes, Not_Null]
string AbcSuccessCodes = "0 3010";
string SomeOtherPropertyThatAbcNeeds;
string SupportedEnvironment = "WinPEandFullOS";
};
MOF-filen beskriver den information som behövs för indata, miljö, egenskaper och distributionspaket för anpassad åtgärd.
Mer information finns i Om MOF-filen för Configuration Manager anpassad åtgärd.
Programindata
Anpassade åtgärder måste köras obevakade, så programmet bör inte fråga efter användarindata. Alla indata ska tas emot från antingen kommandoraden, aktivitetssekvensmiljön eller från en datafil.
Kommandoraden för åtgärdsprogrammet anges i MOF-filen med hjälp av den inbyggda åtgärden Kör kommandorad .
Till exempel:
CommandLine("smsswd.exe /run:PackageID abc.exe [any abc.exe command line args]"
Programbearbetning
Aktivitetssekvensprogrammet kör de anpassade åtgärdsåtgärderna. Den måste vara medveten om sin driftsmiljö och ha åtkomst till aktivitetssekvenseringsmiljövariabler, rapportförlopp och returkompletteringskoder.
Miljö
MOF-filen ska ange driftmiljön med egenskapen SMS_TaskSequence_Action Server WMI ClassSupportedEnvironment
. De tillgängliga miljöerna är Windows PE (WinPE
), fullständigt operativsystem (FullOS
) eller båda miljöerna (WinPEandFullOS
).
Valet av miljö beror på omständigheterna. Till exempel kommer konfiguration av föroperativ installation troligen att utföras i Windows PE-miljön. Mer information finns i Infrastrukturkrav för distribution av operativsystem. Uppdateringar för installerade operativsystem använder den fullständiga operativsystemmiljön. Till exempel installation av programvara eller drivrutin. Operativsystemets miljöagnostiska uppgifter, till exempel omstarter eller skapandet av nätverksanslutningar, kan utföras med hjälp av båda miljöinställningarna.
Bearbetning
Under bearbetningen kommer du åt aktivitetssekvensvariablerna som definieras av MOF-filen med hjälp av COM-automatiseringsobjektet TSEnvironment
. Mer information finns i Använda aktivitetssekvensvariabler i en Configuration Manager aktivitetssekvens som körs.
Om åtgärden tar lång tid kan du rapportera förloppet till aktivitetssekvensmiljön och visa en förloppsindikator med hjälp av COM-automatiseringsklassen för ProgressUI-klienten. Mer information finns i Om rapportering Configuration Manager förlopp för anpassade åtgärder.
Slutförandet
Programmet bör ange SuccessCodes
miljövariabeln som ett returvärde när den har slutförts.
Återvända | Beskrivning |
---|---|
0 | Klart |
Inte noll | Misslyckande |
Om en omstart krävs när programmet har slutförts SMSTSRebootRequested
ska miljövariabeln anges. Mer information finns i Aktivitetssekvensvariabler. Information om hur du anger miljövariabler finns i Använda aktivitetssekvensvariabler i en Configuration Manager aktivitetssekvens som körs.
Distribution
För att kunna användas av Configuration Manager måste det anpassade åtgärdsprogrammet vara tillgängligt från ett Configuration Manager-paket. Administratören kan skapa paketet med hjälp av antingen Configuration Manager-konsolen eller med hjälp av ett programmeringsspråk. Mer information finns i Så här skapar du ett paket.
Paketidentifieraren måste vara tillgänglig för att distributionen ska fungera. Vanligtvis deklarerar MOF-filen en egenskap som ska innehålla den, som i följande exempel:
[TaskSequencePackage, CommandLineArg(1)]
string PackageIDForAbcExe;
Obs!
Paketidentifieraren är egenskapen SMS_Package Server WMI ClassPackageID
.
Paketidentifieraren hämtas från administratören när den anpassade åtgärden redigeras i aktivitetssekvensredigeraren.
Om du vill aktivera det här beteendet kan din anpassade åtgärdskontroll använda en textredigeringskontroll i implementeringen för att hämta paketidentifieraren från administratören. Ett exempel som använder en textkontroll finns i Så här skapar du en Configuration Manager anpassad åtgärdskontroll.
När den används av administratören redigeras den anpassade åtgärdskontrollen som en del av en aktivitetssekvens med hjälp av aktivitetssekvensredigeraren. När den sparas av aktivitetssekvensredigeraren skapas en SMS_TaskSequencePackage Serverns WMI-klass för att lagra aktivitetssekvensen, inklusive den anpassade åtgärden.
Aktivitetssekvenspaketet annonseras sedan till klienter tillsammans med det anpassade åtgärdspaketet som refereras av den anpassade åtgärden. Mer information finns i Så här skapar du en annons.
När den anpassade åtgärden körs på klienten anges paketidentifieraren för den anpassade åtgärden som en kommandoradsparameter, från vilken de binära filerna för den anpassade åtgärden extraheras och körs.
Paketidentifieraren tillhandahålls med hjälp /run
av kommandoradsparametern för att Smsswd.exe.
Konfiguration av förnätverkspartition och förpartition
Om du behöver konfigurera disk- eller nätverksanslutning innan du har en diskpartition och innan du har nätverksanslutning måste du skapa ett program för att utföra dessa uppgifter. Programmet ska placeras i en anpassad startavbildning med hjälp av Windows Assessment and Deployment Kit (ADK). Mer information finns i Windows ADK-scenarier för IT-proffs.
Obs!
Om du lägger till filer i startavbildningsfilen kan du öka minimikraven för RAM-minnet och på grund av minnesbrist kan aktivitetssekvenser misslyckas på oväntade sätt.
Importera sedan avbildningen till Configuration Manager som en anpassad avbildning. Mer information finns i Lägga till en startavbildning.
Programmet, eventuella stödfiler och den anpassade SMSTS.INI ska placeras i Windows-mappen.
Om du vill använda programmet använder du den anpassade startavbildningen i en aktivitetssekvens som innehåller ett förpartitions-/nätverkssteg.
Se även
Om Configuration Manager anpassade åtgärder
Om MOF-filen för den Configuration Manager anpassade åtgärden