Condividi tramite


Classe WMI del server SMS_Program

La SMS_Program classe Strumentazione gestione Windows (WMI) è una classe server del provider SMS, in Configuration Manager, che rappresenta un programma o un comando da eseguire quando il software viene distribuito a un computer client.

La sintassi seguente è semplificata dal codice MOF (Managed Object Format) e include tutte le proprietà ereditate.

Sintassi

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;  
};  

Metodi

La SMS_Program classe non definisce alcun metodo.

Proprietà

ActionInProgress
Tipo di dati:UInt32

Tipo di accesso: sola lettura

Qualificatori: [lettura, enumerazione]

Azione corrente eseguita sul pacchetto associato al programma da Configuration Manager. I valori possibili sono:

Valore Descrizione
0 NESSUNO
1 AGGIORNAMENTO
2 AGGIUNGERE
3 ELIMINA

Utilizzare questa proprietà in una clausola WHERE per filtrare i programmi contrassegnati per l'eliminazione ma non ancora eliminati. Per altre informazioni, vedere la sezione Osservazioni più avanti in questo argomento.

ApplicationHierarchy
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Gerarchia dell'applicazione per il programma. Il valore predefinito è "".

CommandLine
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Riga di comando eseguita all'avvio del programma. Il valore predefinito è "".

Comment
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Commento che descrive il programma nella console Configuration Manager. Il valore predefinito è "".

DependentProgram
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Stringa di testo formattata che definisce qualsiasi programma che deve essere eseguito prima di eseguire questo programma. Il formato è definito come <PackageID>;;<ProgramName>. Se il programma si trova nello stesso pacchetto, l'applicazione chiamante può semplicemente specificare ;;<ProgramName>. Il valore predefinito è "".

La dipendenza viene mantenuta solo per la prima esecuzione del programma. Dopo l'esecuzione del programma, la dipendenza viene ignorata. Ad esempio, non è possibile creare un processo pianificato ricorrente per il quale viene mantenuta la dipendenza per ogni esecuzione del programma.

Description
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Non utilizzata.

DeviceFlags
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Flag che descrivono il dispositivo associato al programma. I valori possibili sono:

Esadecimale (bit) Descrizione
0x01000000 (24) Assegnare sempre il programma al client.
0x02000000 (25) Assegna solo se il dispositivo è attualmente connesso a una connessione a larghezza di banda elevata (impostazione predefinita superiore a 60 KBps).
0x04000000 (26) Assegna solo se il dispositivo è ancorato, ovvero è collegato a un desktop che usa ActiveSync.

DiskSpaceReq
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Spazio su disco approssimativo richiesto dal programma. Il formato è "<size><KB|MB|GB>". Il valore predefinito è "".

Queste informazioni vengono usate nella console di Configuration Manager e nell'annuncio per fornire avvisi sui requisiti di spazio su disco del programma. L'utente può quindi decidere di accettare l'annuncio o eseguire prima alcune attività di gestione del disco.

DriveLetter
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: [SizeLimit("1"), Range("a-z")]

Lettera di unità (un carattere nell'intervallo a-z) a cui il programma esegue il mapping e da cui viene eseguito. Il valore predefinito è "".

Duration
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Durata approssimativa, in minuti, dell'esecuzione del programma nel computer client. Specificare questo valore come numero intero maggiore o uguale a 0 (impostazione predefinita) o come Sconosciuto (non consigliato). Se la proprietà è impostata su Sconosciuto, Configuration Manager imposta il tempo di esecuzione massimo consentito su 720 minuti (12 ore). Per altre informazioni, vedere la sezione Osservazioni più avanti in questo argomento.

Nota

Nei computer client, il valore specificato per i programmi pubblicati viene visualizzato in Run Advertised Programs in Pannello di controllo.

ExtendedData
Tipo di dati: UInt8 Matrice

Tipo di accesso: lettura/scrittura

Qualificatori: [grande, pigro]

BLOB XML per la distribuzione di immagini.

ExtendedDataSize
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: [lazy]

Dimensioni dei dati estese, in byte. Il valore predefinito è 0.

Icon
Tipo di dati: UInt8 Matrice

Tipo di accesso: lettura/scrittura

Qualificatori: [large]

Informazioni sull'icona associate all'icona del programma, come visualizzato nella console Configuration Manager.

IconSize
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: [lazy]

Dimensioni, in byte, dell'icona del programma. Impostare questa proprietà su 0 per cancellare l'icona.

ISVData
Tipo di dati: UInt8 Matrice

Tipo di accesso: lettura/scrittura

Qualificatori: [grande, pigro]

Informazioni che consentono a un singolo ISV di archiviare i dati relativi a un SMS_Program oggetto.

Non sono previste restrizioni o formati definiti per i dati ISV. Tuttavia, è importante non sovrascrivere la proprietà dopo che è stata stabilita la proprietà ISV. L'applicazione deve prima leggere i dati esistenti in questa proprietà. Se i dati non appartengono all'applicazione, non devono essere modificati. È necessario includere un identificatore nei dati per il programma in modo che la proprietà possa essere stabilita facilmente.

ISVDataSize
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: [lazy]

Dimensioni, in byte, dei dati archiviati in ISVData. Il valore predefinito è 0.

ISVString
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: nessuno

Stringa per l'estendibilità del partner.

MSIFilePath
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Percorso del file del pacchetto di Windows Installer a cui è associato il programma. Il valore predefinito è "".

MSIProductID
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

ID prodotto del pacchetto di Windows Installer a cui è associato il programma. Il valore predefinito è "".

PackageID
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: [chiave, Not_null]

ID di un pacchetto esistente a cui associare il programma. Per altre informazioni, vedere la sezione Osservazioni più avanti in questo argomento.

PackageName
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: [Nessuno]

Nome del pacchetto a cui appartiene il programma.

PackageType
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: [Nessuno]

Tipo del pacchetto a cui appartiene il programma.

Valore Descrizione
0 Normale pacchetto di distribuzione software.
3 Pacchetto driver.
4 Pacchetto della sequenza di attività.
5 Pacchetto di aggiornamento software.
6 Pacchetto di impostazione del dispositivo.
257 Pacchetto immagine.
258 Pacchetto immagine di avvio.
259 Pacchetto di installazione del sistema operativo.

PackageVersion
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: [Nessuno]

La versione del pacchetto a cui appartiene il programma.

ProgramFlags
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: [bits]

Flag che identificano le caratteristiche di installazione del programma. Di seguito sono elencati i valori possibili. I valori predefiniti sono EVERYUSER, USEUNCPATH, USERCONTEXT e UNATTENDED.

Nota

Quando si usa SMS_Program a livello di codice, assicurarsi che non siano selezionati valori in conflitto. Ad esempio, NOUSERLOGGEDIN e USERCONTEXT non devono essere usati insieme.

I valori possibili sono:

Esadecimale (bit) Descrizione
0x00000001 (0) AUTHORIZED_DYNAMIC_INSTALL. Il programma è autorizzato per l'installazione dinamica.
0x00000002 (1) USECUSTOMPROGRESSMSG. La sequenza di attività mostra un messaggio dell'interfaccia utente di stato personalizzato.
0x00000010 (4) DEFAULT_PROGRAM. Si tratta di un programma predefinito
0x00000020 (5) DISABLEMOMALERTONRUNNING. Disabilita gli avvisi MOM durante l'esecuzione del programma.
0x00000040 (6) MOMALERTONFAIL. Genera un avviso MOM se il programma ha esito negativo.
0x00000080 (7) RUN_DEPENDANT_ALWAYS. Se impostato, il dipendente immediato di questo programma deve essere sempre eseguito.
0x00000100 (8) WINDOWS_CE. Indica un programma per dispositivi. Se impostato, il programma non viene offerto ai client desktop.
0x00000200 (9) Questo valore non viene usato.
0x00000400 (10) CONTO ALLA ROVESCIA. La finestra di dialogo del conto alla rovescia non viene visualizzata.
0x00000800 (11) FORCERERUN. Questo valore non viene usato.
0x00001000 (12) DISABILI. Il programma è disabilitato.
0x00002000 (13) AUTOMATICA. Il programma non richiede alcuna interazione dell'utente.
0x00004000 (14) USERCONTEXT. Il programma può essere eseguito solo quando un utente è connesso.
0x00008000 (15) ADMINRIGHTS. Il programma deve essere eseguito come account amministratore locale.
0x00010000 (16) EVERYUSER. Il programma deve essere eseguito da tutti gli utenti per i quali è valido. Valido solo per i processi obbligatori.
0x00020000 (17) NOUSERLOGGEDIN. Il programma viene eseguito solo quando nessun utente è connesso.
0x00040000 (18) OKTOQUIT. Il programma riavvierà il computer.
0x00080000 (19) OKTOREBOOT. Configuration Manager riavvia il computer al termine dell'esecuzione del programma.
0x00100000 (20) USEUNCPATH. Usare un percorso UNC (nessuna lettera di unità) per accedere al punto di distribuzione.
0x00200000 (21) PERSISTCONNECTION. Mantiene la connessione all'unità specificata nella proprietà DriveLetter. Il flag di bit USEUNCPATH non deve essere impostato.
0x00400000 (22) RUNMINIMIZED. Eseguire il programma come finestra ridotta a icona.
0x00800000 (23) RUNMAXIMIZED. Eseguire il programma come finestra ingrandita.
x01000000 (24) HIDEWINDOW. Nascondere la finestra del programma.
0x02000000 (25) OKTOLOGOFF. Disconnettere l'utente quando il programma viene completato correttamente.
0x04000000 (26) RUNACCOUNT. Questo valore non viene usato.
0x08000000 (27) ANY_PLATFORM. Eseguire l'override del controllo per il supporto della piattaforma.
0x10000000 (28) STILL_RUNNING. Questo valore non viene usato.
0x20000000 (29) SUPPORT_UNINSTALL. Eseguire la disinstallazione dalla chiave del Registro di sistema alla scadenza dell'annuncio.
0x40000000 (30) La piattaforma non è supportata.
0x80000000 (31) SHOW_IN_ARP. Questo valore non viene usato.

ProgramName
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: [chiave, Not_null]

Nome univoco che rappresenta questo programma.

RemovalKey
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Chiave del Registro di sistema che identifica lo script di disinstallazione per il programma. Lo script deve risiedere nel percorso del HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall Registro di sistema. Il valore predefinito è "".

Requirements
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Descrizione di eventuali requisiti aggiuntivi del programma. Il valore predefinito è "".

SecuredTypeID
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: [Nessuno]

Tipo protetto del pacchetto correlato.

SupportedOperatingSystems
Tipo di dati: SMS_OS_Details Matrice

Tipo di accesso: lettura/scrittura

Qualificatori: [lazy]

SMS_OS_Details oggetti classe WMI del server che rappresentano i sistemi operativi in cui è possibile eseguire il programma.

Se non si specifica ANY_PLATFORM nella ProgramFlags proprietà , è necessario specificare uno o più sistemi operativi supportati. SMS_SupportedPlatforms classe WMI del server definisce l'elenco di piattaforme supportate da Configuration Manager.

TransformAnalysisDate
Tipo di dati:DateTime

Tipo di accesso: lettura/scrittura

Qualificatori: [Nessuno]

Solo per uso interno.

TransformDtID
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: [Nessuno]

Solo per uso interno.

TransformReadiness
Tipo di dati:UInt32

Tipo di accesso: lettura/scrittura

Qualificatori: [Nessuno]

Solo per uso interno.

WorkingDirectory
Tipo di dati:String

Tipo di accesso: lettura/scrittura

Qualificatori: Nessuno

Posizione da cui viene eseguito il programma. Il valore predefinito è "".

La directory di lavoro può essere un percorso assoluto nel client o un percorso relativo alla cartella del punto di distribuzione che contiene il pacchetto. Se non viene specificata una directory di lavoro, Configuration Manager usa la cartella del punto di distribuzione predefinita.

Osservazioni

Non sono presenti qualificatori di classe speciali per questa classe. Per altre informazioni sui qualificatori di classe e sui qualificatori di proprietà inclusi nella sezione Proprietà, vedere Configuration Manager Qualificatori di classe e proprietà.

Un programma è sempre associato a un pacchetto padre e in genere rappresenta il programma di installazione per il pacchetto. È possibile associare più di un programma allo stesso pacchetto. L'applicazione utilizza la PackageID proprietà per creare questa associazione. L'applicazione non può modificare questa proprietà dopo la creazione dell'oggetto SMS_Program . Per associare il programma a un pacchetto diverso, l'applicazione deve eliminare l'oggetto e creare un nuovo oggetto con un nuovo PackageID valore.

Quando l'applicazione elimina un SMS_Program oggetto, non viene eliminato finché i relativi componenti correlati, ad esempio gli annunci, non vengono eliminati. Invece, Configuration Manager imposta la ActionInProgress proprietà su DELETE (3) per contrassegnare il programma per l'eliminazione. Per assicurarsi che una query non recuperi i programmi contrassegnati per l'eliminazione, aggiungere questo caso alla clausola WHERE.

Importante

Se si usano finestre di manutenzione per la raccolta in cui viene eseguito il programma, può verificarsi un conflitto se il valore della Duration proprietà è più lungo della finestra di manutenzione pianificata. Se questa proprietà è impostata su Sconosciuto, il programma viene avviato durante la finestra di manutenzione, ma continua a essere eseguito fino al completamento o all'esito negativo dopo la chiusura della finestra di manutenzione.

È consigliabile non impostare la Duration proprietà su Unknown perché questa proprietà viene usata per i due scopi importanti seguenti:

  • Per monitorare i risultati del programma.

  • Per determinare se il programma verrà avviato quando sono state definite finestre di manutenzione nei computer client.

    Se l'applicazione imposta la proprietà ma il Duration tempo di esecuzione del programma supera questa durata, Configuration Manager interrompe il monitoraggio del programma ma non termina il programma. Ciò consente Configuration Manager di continuare con altre funzioni di distribuzione software, ad esempio l'esecuzione di altri programmi annunciati. Il manager non esegue le operazioni seguenti:

  • Arrestare il programma.

  • Liberare tutte le unità mappate per il programma annunciato.

  • Liberare tutte le connessioni di rete effettuate per il programma annunciato.

  • Risorse del sistema operativo gratuite usate da Configuration Manager quando sono in esecuzione programmi annunciati.

    Per altre informazioni, vedere Informazioni su Windows di manutenzione.

Requisiti

Requisiti di runtime

Per altre informazioni, vedere Configuration Manager Requisiti di runtime del server.

Requisiti di sviluppo

Per altre informazioni, vedere Configuration Manager Requisiti di sviluppo del server.

Vedere anche

Classe WMI del server SMS_Package
Come creare un pacchetto
Come creare un programma