SMS_Program Server WMI Class

Klasa SMS_Program Instrumentacja zarządzania windows (WMI) jest klasą serwera dostawcy programu SMS w Configuration Manager, która reprezentuje program lub polecenie uruchamiane podczas dystrybucji oprogramowania na komputerze klienckim.

Poniższa składnia jest uproszczona z kodu MOF (Managed Object Format) i zawiera wszystkie dziedziczone właściwości.

Składni

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

Metody

Klasa SMS_Program nie definiuje żadnych metod.

Właściwości

ActionInProgress
Typ danych: UInt32

Typ dostępu: tylko do odczytu

Kwalifikatory: [odczyt, wyliczenie]

Bieżąca akcja wykonywana na pakiecie skojarzonym z programem przez Configuration Manager. Możliwe wartości to:

Value Opis
0 BRAK
1 AKTUALIZACJI
2 DODAJ
3 USUNĄĆ

Użyj tej właściwości w klauzuli WHERE, aby odfiltrować programy, które zostały oznaczone do usunięcia, ale nie zostały jeszcze usunięte. Aby uzyskać więcej informacji, zobacz sekcję Uwagi w dalszej części tego tematu.

ApplicationHierarchy
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Hierarchia aplikacji programu. Wartość domyślna to "".

CommandLine
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Wiersz polecenia, który jest uruchamiany po uruchomieniu programu. Wartość domyślna to "".

Comment
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Komentarz opisujący program w konsoli Configuration Manager. Wartość domyślna to "".

DependentProgram
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Sformatowany ciąg tekstowy definiujący dowolny program, który powinien zostać uruchomiony przed uruchomieniem tego programu. Format jest zdefiniowany jako <PackageID>;;<ProgramName>. Jeśli program znajduje się w tym samym pakiecie, aplikacja wywołująca może po prostu określić ;;<ProgramName>. Wartość domyślna to "".

Zależność jest utrzymywana tylko po raz pierwszy, gdy program jest uruchamiany. Po uruchomieniu programu zależność jest ignorowana. Na przykład nie można utworzyć cyklicznego zaplanowanego zadania, dla którego jest utrzymywana zależność dla każdego uruchomienia programu.

Description
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Nieużywane.

DeviceFlags
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Flagi opisujące urządzenie skojarzone z programem. Możliwe wartości to:

Szesnastkowa (bitowa) Opis
0x01000000 (24) Zawsze przypisz program do klienta.
0x02000000 (25) Przypisz tylko wtedy, gdy urządzenie jest obecnie połączone z połączeniem o wysokiej przepustowości (domyślnie powyżej 60 KB/s).
0x04000000 (26) Przypisz tylko wtedy, gdy urządzenie jest zadokowane, oznacza to, że jest dołączone do pulpitu używającego narzędzia ActiveSync.

DiskSpaceReq
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Przybliżone miejsce na dysku wymagane przez program. Format to "<size><KB|MB|GB>". Wartość domyślna to "".

Te informacje są używane w konsoli Configuration Manager i w anonsie w celu dostarczania alertów dotyczących wymagań dotyczących miejsca na dysku programu. Następnie użytkownik może podjąć decyzję o zaakceptowaniu anonsu lub najpierw wykonać pewne zadanie zarządzania dyskami.

DriveLetter
Typ danych: String

Typ dostępu: odczyt/zapis

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

Litera dysku (jeden znak w zakresie a-z), do której program mapuje i z której jest uruchamiany. Wartość domyślna to "".

Duration
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Przybliżony czas trwania w minutach wykonywania programu na komputerze klienckim. Określ tę wartość jako liczbę całkowitą większą lub równą 0 (wartość domyślna) lub nieznaną (niezalecana). Jeśli właściwość ma wartość Nieznany, Configuration Manager ustawia maksymalny dozwolony czas wykonywania na 720 minut (12 godzin). Aby uzyskać więcej informacji, zobacz sekcję Uwagi w dalszej części tego tematu.

Uwaga

Na komputerach klienckich określona wartość opublikowanych programów jest wyświetlana w Run Advertised Programs Panel sterowania.

ExtendedData
Typ danych: UInt8 Tablica

Typ dostępu: odczyt/zapis

Kwalifikatory: [duże, leniwe]

Obiekt blob XML do wdrażania obrazów.

ExtendedDataSize
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: [leniwy]

Rozszerzony rozmiar danych w bajtach. Wartość domyślna to 0.

Icon
Typ danych: UInt8 Tablica

Typ dostępu: odczyt/zapis

Kwalifikatory: [duże]

Informacje o ikonie skojarzone z ikoną programu, jak pokazano w konsoli Configuration Manager.

IconSize
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: [leniwy]

Rozmiar w bajtach ikony programu. Ustaw tę właściwość na wartość 0, aby wyczyścić ikonę.

ISVData
Typ danych: UInt8 Tablica

Typ dostępu: odczyt/zapis

Kwalifikatory: [duże, leniwe]

Informacje, które umożliwiają jednemu niezależnemu dostawcy oprogramowania przechowywanie danych dotyczących obiektu SMS_Program .

Nie ma żadnych ograniczeń ani zdefiniowanych formatów danych niezależnych dostawców oprogramowania. Jednak ważne jest, aby nie zastępować właściwości po ustanowieniu własności niezależnego dostawcy oprogramowania. Aplikacja powinna najpierw odczytać istniejące dane w tej właściwości. Jeśli dane nie należą do aplikacji, nie należy ich modyfikować. Należy uwzględnić identyfikator w danych programu, aby można było łatwo ustanowić własność.

ISVDataSize
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: [leniwy]

Rozmiar w bajtach danych przechowywanych w ISVDatapliku . Wartość domyślna to 0.

ISVString
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: brak

Ciąg rozszerzalności partnera.

MSIFilePath
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Ścieżka pliku pakietu Instalatora Windows, z którym jest skojarzony program. Wartość domyślna to "".

MSIProductID
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Identyfikator produktu pakietu Instalatora Windows, z którym jest skojarzony program. Wartość domyślna to "".

PackageID
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: [klucz, Not_null]

Identyfikator istniejącego pakietu, z którym ma zostać skojarzony program. Aby uzyskać więcej informacji, zobacz sekcję Uwagi w dalszej części tego tematu.

PackageName
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: [Brak]

Nazwa pakietu, do którego należy program.

PackageType
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: [Brak]

Typ pakietu, do którego należy program.

Value Opis
0 Zwykły pakiet dystrybucji oprogramowania.
3 Pakiet sterownika.
4 Pakiet sekwencji zadań.
5 Pakiet aktualizacji oprogramowania.
6 Pakiet ustawień urządzenia.
257 Pakiet obrazów.
258 Pakiet obrazu rozruchowego.
259 Pakiet instalacyjny systemu operacyjnego.

PackageVersion
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: [Brak]

Wersja pakietu, do którego należy program.

ProgramFlags
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: [bity]

Flagi identyfikujące charakterystykę instalacji programu. Poniżej wymieniono możliwe wartości. Wartości domyślne to EVERYUSER, USEUNCPATH, USERCONTEXT i UNATTENDED.

Uwaga

W przypadku korzystania SMS_Program programowo upewnij się, że nie wybrano żadnych wartości powodujących konflikt. Na przykład nie należy używać razem elementów NOUSERLOGGEDIN i USERCONTEXT.

Możliwe wartości to:

Szesnastkowa (bitowa) Opis
0x00000001 (0) AUTHORIZED_DYNAMIC_INSTALL. Program jest autoryzowany do instalacji dynamicznej.
0x00000002 (1) USECUSTOMPROGRESSMSG. Sekwencja zadań wyświetla niestandardowy komunikat interfejsu użytkownika postępu.
0x00000010 (4) DEFAULT_PROGRAM. Jest to program domyślny
0x00000020 (5) DISABLEMOMALERTONRUNNING. Wyłącza alerty MOM podczas uruchamiania programu.
0x00000040 (6) MOMALERTONFAIL. Generuje alert MOM, jeśli program zakończy się niepowodzeniem.
0x00000080 (7) RUN_DEPENDANT_ALWAYS. W przypadku ustawienia należy zawsze uruchamiać natychmiastowe zależności tego programu.
0x00000100 (8) WINDOWS_CE. Wskazuje program urządzenia. W przypadku ustawienia program nie jest oferowany klientom stacjonarnym.
0x00000200 (9) Ta wartość nie jest używana.
0x00000400 (10) ODLICZANIE. Okno dialogowe odliczania nie jest wyświetlane.
0x00000800 (11) FORCERERUN. Ta wartość nie jest używana.
0x00001000 (12) WYŁĄCZONE. Program jest wyłączony.
0x00002000 (13) INSTALACJI NIENADZOROWANEJ. Program nie wymaga interakcji z użytkownikiem.
0x00004000 (14) USERCONTEXT. Program może działać tylko wtedy, gdy użytkownik jest zalogowany.
0x00008000 (15) ADMINRIGHTS. Program musi być uruchamiany jako konto administratora lokalnego.
0x00010000 (16) EVERYUSER. Program musi być uruchamiany przez każdego użytkownika, dla którego jest prawidłowy. Prawidłowe tylko w przypadku zadań obowiązkowych.
0x00020000 (17) NOUSERLOGGEDIN. Program jest uruchamiany tylko wtedy, gdy żaden użytkownik nie jest zalogowany.
0x00040000 (18) OKTOQUIT. Program uruchomi ponownie komputer.
0x00080000 (19) OKTOREBOOT. Configuration Manager ponownie uruchamia komputer po pomyślnym zakończeniu działania programu.
0x00100000 (20) USEUNCPATH. Użyj ścieżki UNC (bez litery dysku), aby uzyskać dostęp do punktu dystrybucji.
0x00200000 (21) PERSISTCONNECTION. Utrwala połączenie z dyskiem określonym we właściwości DriveLetter. Nie można ustawić flagi bitowej USEUNCPATH.
0x00400000 (22) RUNMINIMIZED. Uruchom program jako zminimalizowane okno.
0x00800000 (23) RUNMAXIMIZED. Uruchom program jako zmaksymalizowane okno.
x010000000 (24) HIDEWINDOW. Ukryj okno programu.
0x02000000 (25) OKTOLOGOFF. Wyloguj użytkownika po pomyślnym zakończeniu programu.
0x04000000 (26) RUNACCOUNT. Ta wartość nie jest używana.
0x08000000 (27) ANY_PLATFORM. Przesłoń sprawdzanie obsługi platformy.
0x10000000 (28) STILL_RUNNING. Ta wartość nie jest używana.
0x20000000 (29) SUPPORT_UNINSTALL. Uruchom polecenie odinstalowywania z klucza rejestru, gdy anons wygaśnie.
0x40000000 (30) Platforma nie jest obsługiwana.
0x80000000 (31) SHOW_IN_ARP. Ta wartość nie jest używana.

ProgramName
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: [klucz, Not_null]

Unikatowa nazwa reprezentująca ten program.

RemovalKey
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Klucz rejestru, który identyfikuje skrypt odinstalowywania programu. Skrypt musi znajdować się w ścieżce HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall rejestru. Wartość domyślna to "".

Requirements
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Opis wszelkich dodatkowych wymagań programu. Wartość domyślna to "".

SecuredTypeID
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: [Brak]

Zabezpieczony typ powiązanego pakietu.

SupportedOperatingSystems
Typ danych: SMS_OS_Details Tablica

Typ dostępu: odczyt/zapis

Kwalifikatory: [leniwy]

SMS_OS_Details obiekty klasy WMI serwera reprezentujące systemy operacyjne, w których program może działać.

Jeśli nie określisz ANY_PLATFORM we ProgramFlags właściwości, musisz określić co najmniej jeden obsługiwany system operacyjny. SMS_SupportedPlatforms Server WMI Class (Klasa WMI serwera) definiuje listę platform, które Configuration Manager obsługuje.

TransformAnalysisDate
Typ danych: DateTime

Typ dostępu: odczyt/zapis

Kwalifikatory: [Brak]

Tylko do użytku wewnętrznego.

TransformDtID
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: [Brak]

Tylko do użytku wewnętrznego.

TransformReadiness
Typ danych: UInt32

Typ dostępu: odczyt/zapis

Kwalifikatory: [Brak]

Tylko do użytku wewnętrznego.

WorkingDirectory
Typ danych: String

Typ dostępu: odczyt/zapis

Kwalifikatory: Brak

Lokalizacja, z której jest uruchamiany program. Wartość domyślna to "".

Katalog roboczy może być ścieżką bezwzględną na kliencie lub ścieżką względem folderu punktu dystrybucji zawierającego pakiet. Jeśli katalog roboczy nie zostanie określony, Configuration Manager używa domyślnego folderu punktu dystrybucji.

Uwagi

Nie ma specjalnych kwalifikatorów klas dla tej klasy. Aby uzyskać więcej informacji na temat kwalifikatorów klas i kwalifikatorów właściwości zawartych w sekcji Właściwości, zobacz Configuration Manager Class and Property Qualifiers (Kwalifikatory klasy Configuration Manager i właściwości).

Program jest zawsze skojarzony z pakietem nadrzędnym i zazwyczaj reprezentuje program instalacyjny pakietu. Z tym samym pakietem można skojarzyć więcej niż jeden program. Aplikacja używa właściwości , PackageID aby utworzyć to skojarzenie. Aplikacja nie może zmienić tej właściwości po utworzeniu obiektu SMS_Program . Aby skojarzyć program z innym pakietem, aplikacja musi usunąć obiekt i utworzyć nowy obiekt z nową PackageID wartością.

Gdy aplikacja usunie SMS_Program obiekt, nie zostanie on usunięty, dopóki jego powiązane składniki, takie jak jego anonse, nie zostaną usunięte. Zamiast tego Configuration Manager ustawia ActionInProgress właściwość na DELETE (3), aby oznaczyć program do usunięcia. Aby upewnić się, że zapytanie nie pobiera programów oznaczonych do usunięcia, dodaj ten przypadek do klauzuli WHERE.

Ważna

Jeśli używasz okien obsługi dla kolekcji, w której jest uruchamiany program, może wystąpić konflikt, jeśli wartość Duration właściwości jest dłuższa niż okno zaplanowanej konserwacji. Jeśli ta właściwość jest ustawiona na Wartość Nieznana, program jest uruchamiany podczas okna konserwacji, ale będzie uruchamiany do momentu ukończenia lub niepowodzenia po zamknięciu okna obsługi.

Zaleca się, aby właściwość nie była ustawiona Duration na Nieznany, ponieważ ta właściwość jest używana do następujących dwóch ważnych celów:

  • Aby monitorować wyniki programu.

  • Aby określić, czy program zostanie uruchomiony po zdefiniowaniu okien obsługi na komputerach klienckich.

    Jeśli aplikacja ustawia Duration właściwość, ale czas wykonywania programu przekracza ten czas, Configuration Manager przestaje monitorować program, ale nie kończy programu. Umożliwia to Configuration Manager kontynuowanie pracy z innymi funkcjami dystrybucji oprogramowania, takimi jak uruchamianie innych anonsowanych programów. Menedżer nie:

  • Zatrzymaj program.

  • Bezpłatne wszystkie dyski, które zostały zamapowane na anonsowany program.

  • Za darmo wszelkie połączenia sieciowe wykonane dla anonsowanego programu.

  • Bezpłatne zasoby systemu operacyjnego używane przez Configuration Manager podczas uruchamiania anonsowanych programów.

    Aby uzyskać więcej informacji, zobacz Informacje o systemie Windows konserwacji.

Wymagania

Wymagania dotyczące środowiska uruchomieniowego

Aby uzyskać więcej informacji, zobacz wymagania dotyczące środowiska uruchomieniowego serwera Configuration Manager.

Wymagania programistyczne

Aby uzyskać więcej informacji, zobacz Configuration Manager Wymagania dotyczące programowania serwera.

Zobacz też

SMS_Package Server WMI Class
Jak utworzyć pakiet
Jak utworzyć program