Classe WMI de Servidor SMS_Program
A SMS_Program
classe Windows Management Instrumentation (WMI) é uma classe de servidores de fornecedores de SMS, no Gestor de Configuração, que representa um programa ou comando para executar quando o software é distribuído para um computador cliente.
A seguinte sintaxe é simplificada a partir do código do formato MOF (Managed Object Format) e inclui todas as propriedades herdadas.
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;
};
Métodos
A classe SMS_Program
não define quaisquer métodos.
Propriedades
ActionInProgress
Tipo de dados: UInt32
Tipo de acesso: Só de leitura
Eliminatórias: [ler, enumerar]
A ação atual está a ser realizada no pacote que está associado ao programa pelo Gestor de Configuração. Os valores possíveis são:
Valor | Descrição |
---|---|
0 | NENHUMA |
1 | UPDATE |
2 | ADICIONAR |
3 | DELETE |
Utilize esta propriedade numa cláusula WHERE para filtrar programas marcados para eliminação mas que ainda não foram eliminados. Para mais informações, consulte a secção Comentários mais tarde neste tópico.
ApplicationHierarchy
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
A hierarquia de candidatura para o programa. O valor predefinido é "".
CommandLine
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
A linha de comando que funciona quando o programa é iniciado. O valor predefinido é "".
Comment
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
Comentário que descreve o programa na consola Do Gestor de Configuração. O valor predefinido é "".
DependentProgram
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
Uma cadeia de texto formatada que define qualquer programa que deve ser executado antes de executar este programa. O formato é definido como <PackageID> ;; <ProgramName> Se o programa estiver no mesmo pacote, a aplicação de chamada pode simplesmente especificar;; <ProgramName> . O valor predefinido é "".
A dependência é mantida apenas pela primeira vez que o programa funciona. Depois do programa ter sido executado, a dependência é ignorada. Por exemplo, não é possível criar um trabalho programado recorrente para o qual a dependência é mantida para cada programa executado.
Description
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
Não usado.
DeviceFlags
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
Bandeiras descrevendo o dispositivo associado ao programa. Os valores possíveis são:
Hexadecimal (Bit) | Description |
---|---|
0x01000000 (24) | Atribua sempre o programa ao cliente. |
0x02000000 (25) | Atribua apenas se o dispositivo estiver atualmente ligado a uma ligação de largura de banda alta (padrão superior a 60 KBps). |
0x04000000 (26) | Atribua apenas se o dispositivo estiver ancorado, isto é, está ligado a um ambiente de trabalho que está a utilizar o ActiveSync. |
DiskSpaceReq
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
Espaço de disco aproximado que o programa requer. O formato é <size> <KB|MB|GB> " " O valor predefinido é "".
Estas informações são utilizadas na consola Do Gestor de Configuração e no anúncio para fornecer alertas sobre os requisitos de espaço do disco do programa. O utilizador pode então decidir aceitar o anúncio ou realizar uma tarefa de gestão de discos primeiro.
DriveLetter
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificações: [TamanhoLimit("1"), Intervalo ("a-z")]
Passe a letra (um personagem no intervalo a-z) que o programa mapeia para e vai. O valor predefinido é "".
Duration
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
A duração aproximada, em minutos, da execução do programa no computador cliente. Especifique este valor como um número inteiro superior ou igual a 0 (padrão) ou como Desconhecido (não recomendado). Se a propriedade estiver definida para Desconhecido, o Gestor de Configuração define o tempo máximo de funcionamento permitido em 720 minutos (12 horas). Para obter informações adicionais, consulte a secção Comentários mais tarde neste tópico.
Nota
Nos computadores clientes, o valor especificado para programas publicados aparece Run Advertised Programs
no Painel de Controlo.
ExtendedData
Tipo de dados: Matriz UInt8
Tipo de acesso: Leitura/Escrita
Eliminatórias: [grande, preguiçoso]
A bolha XML para a implementação da imagem.
ExtendedDataSize
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Qualificadores: [em diferido]
O tamanho de dados estendido, em bytes. O valor predefinido é 0.
Icon
Tipo de dados: Matriz UInt8
Tipo de acesso: Leitura/Escrita
Eliminatórias: [grande]
Informações do ícone associadas ao ícone do programa, tal como mostrado na consola Do Gestor de Configuração.
IconSize
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Qualificadores: [em diferido]
Tamanho, em bytes, do ícone do programa. Desagre fique com esta propriedade para 0 para limpar o ícone.
ISVData
Tipo de dados: Matriz UInt8
Tipo de acesso: Leitura/Escrita
Eliminatórias: [grande, preguiçoso]
Informação que permite a um único ISV armazenar dados relativos a um SMS_Program
objeto.
Não existem restrições ou formatos definidos para os dados ISV. No entanto, é importante não substituir a propriedade após a propriedade isv ter sido estabelecida. A sua aplicação deve ler primeiro os dados existentes nesta propriedade. Se os dados não pertencerem à aplicação, não deve ser modificado. Deve incluir um identificador nos dados do programa para que a propriedade possa ser facilmente estabelecida.
ISVDataSize
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Qualificadores: [em diferido]
O tamanho, em bytes, dos dados armazenados em ISVData
. O valor predefinido é 0.
ISVString
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Eliminatórias: nenhuma
Corda para extensibilidade do parceiro.
MSIFilePath
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
O caminho de ficheiro do pacote Windows Instalador com o qual o programa está associado. O valor predefinido é "".
MSIProductID
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
O ID do produto do pacote Windows Instalador com o qual o programa está associado. O valor predefinido é "".
PackageID
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Eliminatórias: [chave, Not_null]
Identificação de um pacote existente para associar o programa. Para mais informações, consulte a secção Comentários mais tarde neste tópico.
PackageName
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Eliminatórias: [Nenhum]
O nome do pacote a que pertence o programa pertence.
PackageType
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Eliminatórias: [Nenhum]
O tipo de pacote a que pertence o programa.
Valor | Descrição |
---|---|
0 | Pacote regular de distribuição de software. |
3 | Pacote de motorista. |
4 | Pacote de sequência de tarefas. |
5 | Pacote de atualização de software. |
6 | Pacote de definição de dispositivo. |
257 | Pacote de imagem. |
258 | Pacote de imagem de arranque. |
259 | Pacote de instalação do sistema operativo. |
PackageVersion
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Eliminatórias: [Nenhum]
A versão do pacote a que pertence o programa pertence.
ProgramFlags
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Qualificadores: [bits]
Sinalizadores a identificar as caraterísticas de instalação do programa. Os valores possíveis estão listados abaixo. Os valores predefinidos são EVERYUSER, USEUNCPATH, USERCONTEXT e SEMTTENDED.
Nota
Ao utilizar SMS_Program
programáticamente, certifique-se de que não são selecionados valores contraditórios. Por exemplo, NOUSERLOGGEDIN e USERCONTEXT não devem ser utilizados em conjunto.
Os valores possíveis são:
Hexadecimal (Bit) | Description |
---|---|
0x00000001 (0) | AUTHORIZED_DYNAMIC_INSTALL. O programa está autorizado para instalação dinâmica. |
0x00000002 (1) | USECUSTOMPROGRESSMSG. A sequência de tarefas mostra uma mensagem de interface de utilizador de progresso personalizada. |
0x00000010 (4) | DEFAULT_PROGRAM. Este é um programa predefinido |
0x00000020 (5) | DISABLEMOMALERTONRUNNING. Desativa os alertas da MOM enquanto o programa é executado. |
0x00000040 (6) | MOMALERTONFAIL. Gera alerta MOM se o programa falhar. |
0x00000080 (7) | RUN_DEPENDANT_ALWAYS. Se estiver definido, este programa deve ser sempre executado. |
0x00000100 (8) | WINDOWS_CE. Indica um programa de dispositivo. Se definido, o programa não é oferecido aos clientes de desktop. |
0x00000200 (9) | Este valor não é usado. |
0x00000400 (10) | CONTAGEM DESCRESCENTE. O diálogo de contagem regressiva não é apresentado. |
0x00000800 (11) | FORÇARERUN. Este valor não é usado. |
0x00001000 (12) | DESATIVADO. O programa está desativado. |
0x00002000 (13) | AUTÓNOMO. O programa não requer qualquer interação do utilizador. |
0x00004000 (14) | USERCONTEXT. O programa só pode ser executado quando um utilizador está ligado. |
0x00008000 (15) | ADMINRIGHTS. O programa deve ser executado como conta de Administrador local. |
0x00010000 (16) | EVERYUSER. O programa tem de ser executado por todos os utilizadores para os quais é válido. Válido apenas para trabalhos obrigatórios. |
0x00020000 (17) | NOUSERLOGGEDIN. O programa é executado só quando nenhum utilizador tiver iniciado sessão. |
0x00040000 (18) | OKTOQUIT. O programa reiniciará o computador. |
0x00080000 (19) | OKTOREBOOT. O Gestor de Configuração reinicia o computador quando o programa termina de funcionar com sucesso. |
0x00100000 (20) | USEUNCPATH. Utilize um caminho UNC (sem letra de unidade) para aceder ao ponto de distribuição. |
0x00200000 (21) | PERSISTCONNECTION. Persiste a ligação à unidade especificada na propriedade DriveLetter. A bandeira da broca USEUNCPATH não deve ser definida. |
0x00400000 (22) | RUNMINIMIZED. Executar o programa como uma janela minimizada. |
0x00800000 (23) | RUNMAXIMIZED. Executar o programa como uma janela maximizada. |
x010000000 (24) | HIDEWINDOW. Ocultar a janela do programa. |
0x02000000 (25) | OKTOLOGOFF. Utilizador logoff quando o programa estiver concluído com sucesso. |
0x04000000 (26) | RUNACCOUNT. Este valor não é usado. |
0x08000000 (27) | ANY_PLATFORM. Verifique se há suporte para a plataforma. |
0x10000000 (28) | STILL_RUNNING. Este valor não é usado. |
0x20000000 (29) | SUPPORT_UNINSTALL. Desinstale a partir da chave de registo quando o anúncio expirar. |
0x40000000 (30) | A plataforma não é suportada. |
0x80000000 (31) | SHOW_IN_ARP. Este valor não é usado. |
ProgramName
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Eliminatórias: [chave, Not_null]
Nome único que representa este programa.
RemovalKey
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
Chave de registo que identifica o script de desinstalar para o programa. O guião deve residir no caminho do HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
registo. O valor predefinido é "".
Requirements
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
Descrição de quaisquer requisitos adicionais do programa. O valor predefinido é "".
SecuredTypeID
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Eliminatórias: [Nenhum]
Tipo seguro de pacote relacionado.
SupportedOperatingSystems
Tipo de dados: Matriz SMS_OS_Details
Tipo de acesso: Leitura/Escrita
Qualificadores: [em diferido]
SMS_OS_Details objetos da classe WMI do servidor que representam os sistemas operativos nos quais o programa pode ser executado.
Se não especificar ANY_PLATFORM na ProgramFlags
propriedade, deve especificar um ou mais sistemas operativos suportados. SMS_SupportedPlatforms Classe WMI do servidor define a lista de plataformas que o Gestor de Configuração suporta.
TransformAnalysisDate
Tipo de dados: DateTime
Tipo de acesso: Leitura/Escrita
Eliminatórias: [Nenhum]
Apenas para utilização interna.
TransformDtID
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Eliminatórias: [Nenhum]
Apenas para utilização interna.
TransformReadiness
Tipo de dados: UInt32
Tipo de acesso: Leitura/Escrita
Eliminatórias: [Nenhum]
Apenas para utilização interna.
WorkingDirectory
Tipo de dados: String
Tipo de acesso: Leitura/Escrita
Qualificadores: Nenhum
O local a partir do qual o programa funciona. O valor predefinido é "".
O diretório de trabalho pode ser um caminho absoluto no cliente ou um caminho em relação à pasta do ponto de distribuição que contém o pacote. Se não for especificado um diretório de trabalho, o Gestor de Configuração utiliza a pasta de ponto de distribuição predefinido.
Observações
Não há qualificações especiais para esta aula. Para obter mais informações sobre os qualificadores de classe e os qualificadores de propriedade incluídos na secção Propriedades, veja Configuration Manager Class and Property Qualifiers (Qualificadores de Classe e de Propriedade do Configuration Manager).
Um programa está sempre associado a um pacote parental e normalmente representa o programa de instalação do pacote. Note que mais de um programa pode ser associado com o mesmo pacote. A aplicação utiliza o PackageID
imóvel para fazer esta associação. A sua aplicação não pode alterar esta propriedade após a criação do SMS_Program
objeto. Para associar o programa a um pacote diferente, a aplicação deve eliminar o objeto e criar um novo objeto com um novo PackageID
valor.
Quando a sua aplicação elimina um SMS_Program
objeto, não é eliminada até que os seus componentes relacionados, como os seus anúncios, sejam eliminados. Em vez disso, o Gestor de Configuração define ActionInProgress
a propriedade para DELETE (3) para marcar o programa para eliminação. Para garantir que uma consulta não recupere programas marcados para eliminação, adicione este caso à cláusula WHERE.
Importante
Se estiver a utilizar janelas de manutenção para a recolha em que o programa é executado, pode ocorrer um conflito se o valor da Duration
propriedade for maior do que a janela de manutenção programada. Se esta propriedade estiver definida para Desconhecido, o programa começa durante a janela de manutenção, mas continua a funcionar até que este complete ou falhe após o fecho da janela de manutenção.
Recomenda-se que não desconte a Duration
propriedade para Desconhecido porque esta propriedade é usada para os seguintes dois propósitos importantes:
Para monitorizar os resultados do programa.
Para determinar se o programa será lançado quando as janelas de manutenção tiverem sido definidas nos computadores clientes.
Se a sua aplicação define a propriedade mas o
Duration
tempo de execução do programa exceder esta duração, então o Gestor de Configuração para de monitorizar o programa mas não termina o programa. Isto permite que o Gestor de Configuração continue com outras funções de distribuição de software, como executar outros programas anunciados. O gestor não:Pare o programa.
Liberte todas as unidades que tenham sido mapeadas para o programa anunciado.
Gratuito quaisquer ligações de rede feitas para o programa anunciado.
Recursos do sistema operativo gratuitos utilizados pelo Gestor de Configuração quando os programas anunciados estão em execução.
Para obter informações adicionais, consulte sobre a manutenção Windows.
Requisitos
Requisitos de Tempo de Execução
Para obter mais informações, consulte Configuration Manager Server Runtime Requirements (Requisitos de Tempo de Execução do Servidor do Configuration Manager).
Requisitos de Desenvolvimento
Para obter mais informações, consulte Configuration Manager Server Development Requirements (Requisitos de Desenvolvimento do Servidor do Configuration Manager).
Consulte também
Classe WMI do servidor de SMS_Package
Como criar um pacote
Como Criar um Programa