SMS_Program, serverns WMI-klass
SMS_Program
WMI-klassen (Windows Management Instrumentation) är en SMS Provider-serverklass i Configuration Manager som representerar ett program eller kommando som ska köras när programvara distribueras till en klientdator.
Följande syntax förenklas från MOF-kod (Managed Object Format) och innehåller alla ärvda egenskaper.
Syntax
Class SMS_Program : SMS_BaseClass
{
UInt32 ActionInProgress;
String ApplicationHierarchy;
String CommandLine;
String Comment;
String DependentProgram;
String Description;
UInt32 DeviceFlags;
String DiskSpaceReq;
String DriveLetter;
UInt32 Duration;
UInt8 ExtendedData[];
UInt32 ExtendedDataSize;
UInt8 Icon[];
UInt32 IconSize;
UInt8 ISVData[];
UInt32 ISVDataSize;
String ISVString;
String MSIFilePath
String MSIProductID
String PackageID;
String PackageName
UInt32 PackageType
String PackageVersion
UInt32 ProgramFlags;
String ProgramName;
String RemovalKey;
String Requirements;
UInt32 SecuredTypeID
SMS_OS_Details SupportedOperatingSystems[];
UInt32 TransformReadiness=0;
Datetime TransformAnalysisDate;
String TransformDtID;
String WorkingDirectory;
};
Metoder
Klassen SMS_Program
definierar inga metoder.
Egenskaper
ActionInProgress
Datatyp: UInt32
Åtkomsttyp: Skrivskyddad
Kvalificerare: [read, enumeration]
Aktuell åtgärd som utförs på paketet som är associerat med programmet av Configuration Manager. Möjliga värden är:
Värde | Beskrivning |
---|---|
0 | INGEN |
1 | UPPDATERING |
2 | ADD |
3 | TA BORT |
Använd den här egenskapen i en WHERE-sats för att filtrera bort program som har markerats för borttagning men som ännu inte har tagits bort. Mer information finns i avsnittet Kommentarer senare i det här avsnittet.
ApplicationHierarchy
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Programmets programhierarki. Standardvärdet är "".
CommandLine
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Kommandoraden som körs när programmet startas. Standardvärdet är "".
Comment
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Kommentar som beskriver programmet i Configuration Manager-konsolen. Standardvärdet är "".
DependentProgram
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
En formaterad textsträng som definierar alla program som ska köras innan det här programmet körs. Formatet definieras som <PackageID>;;<ProgramName>. Om programmet finns i samma paket kan det anropande programmet helt enkelt ange ;;<ProgramName>. Standardvärdet är "".
Beroendet underhålls bara för första gången som programmet körs. När programmet har körts ignoreras beroendet. Du kan till exempel inte skapa ett återkommande schemalagt jobb som beroendet underhålls för för varje programkörning.
Description
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Används inte.
DeviceFlags
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Flaggor som beskriver enheten som är associerad med programmet. Möjliga värden är:
Hexadecimalt (bit) | Beskrivning |
---|---|
0x01000000 (24) | Tilldela alltid programmet till klienten. |
0x02000000 (25) | Tilldela endast om enheten för närvarande är ansluten till en anslutning med hög bandbredd (standardvärdet är över 60 KBIT/s). |
0x04000000 (26) | Tilldela endast om enheten är dockad, d.v.s. den är ansluten till ett skrivbord som använder ActiveSync. |
DiskSpaceReq
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Ungefärligt diskutrymme som programmet kräver. Formatet är "<size><KB|MB|GB>". Standardvärdet är "".
Den här informationen används i Configuration Manager-konsolen och annonsen för att ge aviseringar om programdiskutrymmeskrav. Användaren kan sedan välja att godkänna annonsen eller utföra en viss diskhanteringsuppgift först.
DriveLetter
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: [SizeLimit("1"), Range("a-z")]
Enhetsbeteckning (ett tecken i intervallet a-z) som programmet mappar till och kör från. Standardvärdet är "".
Duration
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Den ungefärliga varaktigheten i minuter för programkörning på klientdatorn. Ange det här värdet som ett heltal större än eller lika med 0 (standard) eller som Okänt (rekommenderas inte). Om egenskapen är inställd på Okänd anger Configuration Manager den maximala tillåtna körningstiden som 720 minuter (12 timmar). Mer information finns i avsnittet Kommentarer senare i det här avsnittet.
Obs!
På klientdatorer visas det angivna värdet för publicerade program i Run Advertised Programs
Kontrollpanelen.
ExtendedData
Datatyp: UInt8
Matris
Åtkomsttyp: Läsa/skriva
Kvalificerare: [stor, lat]
XML-bloben för avbildningsdistribution.
ExtendedDataSize
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: [lazy]
Den utökade datastorleken i byte. Standardvärdet är 0.
Icon
Datatyp: UInt8
Matris
Åtkomsttyp: Läsa/skriva
Kvalificerare: [stor]
Ikoninformation som är associerad med programikonen, som visas i Configuration Manager-konsolen.
IconSize
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: [lazy]
Storlek i byte för programikonen. Ange den här egenskapen till 0 för att ta bort ikonen.
ISVData
Datatyp: UInt8
Matris
Åtkomsttyp: Läsa/skriva
Kvalificerare: [stor, lat]
Information som gör att en enskild ISV kan lagra data som är relaterade till ett SMS_Program
objekt.
Det finns inga begränsningar eller definierade format för ISV-data. Det är dock viktigt att inte skriva över egenskapen när ISV-ägarskapet har upprättats. Ditt program bör först läsa befintliga data i den här egenskapen. Om data inte tillhör programmet bör de inte ändras. Du bör inkludera en identifierare i data för programmet så att ägarskapet enkelt kan upprättas.
ISVDataSize
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: [lazy]
Storleken, i byte, på data som lagras i ISVData
. Standardvärdet är 0.
ISVString
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: ingen
Sträng för utökningsbarhet för partner.
MSIFilePath
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Filsökvägen för Windows Installer-paketet som programmet är associerat med. Standardvärdet är "".
MSIProductID
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Produkt-ID för Windows Installer-paketet som programmet är associerat med. Standardvärdet är "".
PackageID
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: [key, Not_null]
ID för ett befintligt paket som programmet ska associeras med. Mer information finns i avsnittet Kommentarer senare i det här avsnittet.
PackageName
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: [Ingen]
Namnet på paketet som programmet tillhör.
PackageType
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: [Ingen]
Typen av paket som programmet tillhör.
Värde | Beskrivning |
---|---|
0 | Vanligt programdistributionspaket. |
3 | Drivrutinspaket. |
4 | Aktivitetssekvenspaket. |
5 | Programuppdateringspaket. |
6 | Enhetsinställningspaket. |
257 | Avbildningspaket. |
258 | Startavbildningspaket. |
259 | Installationspaket för operativsystem. |
PackageVersion
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: [Ingen]
Versionen av paketet som programmet tillhör.
ProgramFlags
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: [bitar]
Flaggor som identifierar programmets installationsegenskaper. Möjliga värden visas nedan. Standardvärdena är EVERYUSER, USEUNCPATH, USERCONTEXT och UNATTENDED.
Obs!
När du använder SMS_Program
programmatiskt kontrollerar du att inga motstridiga värden har valts. Till exempel bör NOUSERLOGGEDIN och USERCONTEXT inte användas tillsammans.
Möjliga värden är:
Hexadecimalt (bit) | Beskrivning |
---|---|
0x00000001 (0) | AUTHORIZED_DYNAMIC_INSTALL. Programmet är godkänt för dynamisk installation. |
0x00000002 (1) | USECUSTOMPROGRESSMSG. Aktivitetssekvensen visar ett anpassat meddelande för användargränssnittet för förlopp. |
0x00000010 (4) | DEFAULT_PROGRAM. Det här är ett standardprogram |
0x00000020 (5) | DISABLEMOMALERTONRUNNING. Inaktiverar MOM-aviseringar medan programmet körs. |
0x00000040 (6) | MOMALERTONFAIL. Genererar MOM-avisering om programmet misslyckas. |
0x00000080 (7) | RUN_DEPENDANT_ALWAYS. Om det här programmet anges bör det här programmets omedelbara beroende alltid köras. |
0x00000100 (8) | WINDOWS_CE. Anger ett enhetsprogram. Om det anges erbjuds inte programmet till skrivbordsklienter. |
0x00000200 (9) | Det här värdet används inte. |
0x00000400 (10) | NEDRÄKNINGEN. Nedräkningsdialogrutan visas inte. |
0x00000800 (11) | FORCERERUN. Det här värdet används inte. |
0x00001000 (12) | INAKTIVERAD. Programmet är inaktiverat. |
0x00002000 (13) | OBEVAKAD. Programmet kräver ingen användarinteraktion. |
0x00004000 (14) | USERCONTEXT. Programmet kan bara köras när en användare är inloggad. |
0x00008000 (15) | ADMINRIGHTS. Programmet måste köras som det lokala administratörskontot. |
0x00010000 (16) | EVERYUSER. Programmet måste köras av alla användare som det är giltigt för. Endast giltigt för obligatoriska jobb. |
0x00020000 (17) | NOUSERLOGGEDIN. Programmet körs bara när ingen användare är inloggad. |
0x00040000 (18) | OKTOQUIT. Programmet startar om datorn. |
0x00080000 (19) | OKTOREBOOT. Configuration Manager startar om datorn när programmet har körts. |
0x00100000 (20) | USEUNCPATH. Använd en UNC-sökväg (ingen enhetsbeteckning) för att komma åt distributionsplatsen. |
0x00200000 (21) | PERSISTCONNECTION. Bevarar anslutningen till den enhet som anges i egenskapen DriveLetter. USEUNCPATH-bitflaggan får inte anges. |
0x00400000 (22) | RUNMINIMIZED. Kör programmet som ett minimerat fönster. |
0x00800000 (23) | RUNMAXIMIZED. Kör programmet som ett maximerat fönster. |
x01000000 (24) | HIDEWINDOW. Dölj programfönstret. |
0x02000000 (25) | OKTOLOGOFF. Logga ut användare när programmet har slutförts. |
0x04000000 (26) | RUNACCOUNT. Det här värdet används inte. |
0x08000000 (27) | ANY_PLATFORM. Åsidosätt kontroll av plattformsstöd. |
0x10000000 (28) | STILL_RUNNING. Det här värdet används inte. |
0x20000000 (29) | SUPPORT_UNINSTALL. Kör avinstallera från registernyckeln när annonsen upphör att gälla. |
0x40000000 (30) | Plattformen stöds inte. |
0x80000000 (31) | SHOW_IN_ARP. Det här värdet används inte. |
ProgramName
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: [key, Not_null]
Unikt namn som representerar det här programmet.
RemovalKey
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Registernyckel som identifierar programmets avinstallationsskript. Skriptet måste finnas i HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
registersökvägen. Standardvärdet är "".
Requirements
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Beskrivning av eventuella extra krav för programmet. Standardvärdet är "".
SecuredTypeID
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: [Ingen]
Skyddad typ av relaterat paket.
SupportedOperatingSystems
Datatyp: SMS_OS_Details
Matris
Åtkomsttyp: Läsa/skriva
Kvalificerare: [lazy]
SMS_OS_Details WMI-klassobjekt som representerar de operativsystem som programmet kan köras på.
Om du inte anger ANY_PLATFORM i ProgramFlags
egenskapen måste du ange ett eller flera operativsystem som stöds.
SMS_SupportedPlatforms-serverns WMI-klass definierar listan över plattformar som Configuration Manager stöder.
TransformAnalysisDate
Datatyp: DateTime
Åtkomsttyp: Läsa/skriva
Kvalificerare: [Ingen]
Endast för internt bruk.
TransformDtID
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: [Ingen]
Endast för internt bruk.
TransformReadiness
Datatyp: UInt32
Åtkomsttyp: Läsa/skriva
Kvalificerare: [Ingen]
Endast för internt bruk.
WorkingDirectory
Datatyp: String
Åtkomsttyp: Läsa/skriva
Kvalificerare: Ingen
Den plats som programmet körs från. Standardvärdet är "".
Arbetskatalogen kan vara en absolut sökväg på klienten eller en sökväg i förhållande till distributionsplatsmappen som innehåller paketet. Om en arbetskatalog inte anges använder Configuration Manager standarddistributionsplatsmappen.
Anmärkningar
Det finns inga särskilda klasskvalificerare för den här klassen. Mer information om både klasskvalificerare och egenskapskvalificerare som ingår i avsnittet Egenskaper finns i Configuration Manager klass- och egenskapskvalificerare.
Ett program är alltid associerat med ett överordnat paket och representerar vanligtvis installationsprogrammet för paketet. Fler än ett program kan associeras med samma paket. Programmet använder PackageID
egenskapen för att skapa den här associationen. Programmet kan inte ändra den här egenskapen när objektet SMS_Program
har skapats. Om du vill associera programmet med ett annat paket måste programmet ta bort objektet och skapa ett nytt objekt med ett nytt PackageID
värde.
När ditt program tar bort ett SMS_Program
objekt tas det inte bort förrän dess relaterade komponenter, till exempel annonserna, har tagits bort. I stället anger ActionInProgress
Configuration Manager egenskapen till DELETE (3) för att markera programmet för borttagning. För att säkerställa att en fråga inte hämtar program som har markerats för borttagning lägger du till det här fallet i WHERE-satsen.
Viktigt
Om du använder underhållsperioder för samlingen där programmet körs kan en konflikt uppstå om värdet för Duration
egenskapen är längre än den schemalagda underhållsperioden. Om den här egenskapen är inställd på Okänd startar programmet under underhållsperioden, men fortsätter att köras tills den har slutförts eller misslyckas när underhållsperioden har stängts.
Vi rekommenderar att du inte anger Duration
egenskapen till Okänd eftersom den här egenskapen används för följande två viktiga syften:
Övervaka programmets resultat.
För att avgöra om programmet kommer att startas när underhållsperioder har definierats på klientdatorerna.
Om programmet anger
Duration
egenskapen men programkörningstiden överskrider den här varaktigheten slutar Configuration Manager övervaka programmet men avslutar inte programmet. På så sätt kan Configuration Manager fortsätta med andra programdistributionsfunktioner, till exempel att köra andra annonserade program. Chefen gör inte följande:Stoppa programmet.
Frigör alla enheter som har mappats för det annonserade programmet.
Frigör alla nätverksanslutningar som görs för det annonserade programmet.
Kostnadsfria operativsystemresurser som används av Configuration Manager när annonserade program körs.
Mer information finns i Om underhållsperioder.
Krav
Körningskrav
Mer information finns i Configuration Manager serverkörningskrav.
Utvecklingskrav
Mer information finns i Configuration Manager Server Development Requirements (Utvecklingskrav för Configuration Manager server).
Se även
SMS_Package serverns WMI-klass
Så här skapar du ett paket
Så här skapar du ett program