Dela via


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