Udostępnij za pośrednictwem


ICE 102

Sprawdza poprawność tabel MsiServiceConfig i MsiServiceConfigFailureAction s.

Sprawdza, czy wartość w kolumnie Event w MsiServiceConfig i MsiServiceConfigFailureActions tabel jest msidbServiceConfigEventInstall, msidbServiceConfigEventUninstalllub msidbServiceConfigEventReinstall. Sprawdza, czy wartość w kolumnie Component_ w tabelach MsiServiceConfig i MsiServiceConfigFailureActions jest prawidłowym kluczem w tabeli składników .

Sprawdza, czy wartości w kolumnie ConfigType tabeli MsiServiceConfig są jedną z dozwolonych wartości.

Sprawdza, czy wartości w kolumnach Actions i Delayed Actions MsiServiceConfigFailureActions tabeli są oddzielone [~]. Sprawdza, czy liczba wartości wymienionych w kolumnie Akcje i liczba wartości wymienionych w kolumnie Opóźnione akcje w każdym wierszu tabeli MsiServiceConfigFailureActions są takie same.

Jeśli wartość w polu ConfigType w tabeli MsiServiceConfig jest SERVICE_CONFIG_DELAYED_AUTO_START wartość w polu Argument musi wynosić 0 lub 1.

Jeśli wartość w polu ConfigType w tabeli MsiServiceConfig jest SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO wartość w polu Argument musi zawierać prawidłowy ciąg stałych uprawnień.

Jeśli wartość w polu ConfigType w tabeli MsiServiceConfig jest SERVICE_CONFIG_SERVICE_SID_INFO wartość w polu Argument musi być SERVICE_SID_TYPE_NONE, SERVICE_SID_TYPE_RESTRICTEDlub SERVICE_SID_TYPE_UNRESTRICTED.

Jeśli wartość w polu ConfigType w tabeli MsiServiceConfig jest SERVICE_CONFIG_PRESHUTDOWN_INFO wartość w polu Argument musi być dodatnia lub pusta. Jeśli wartość w polu ConfigType w tabeli MsiServiceConfig jest SERVICE_CONFIG_FAILURE_ACTIONS_FLAG wartość w polu Argument musi zawierać wartość 0 lub 1.

Instalatora Windows 4.5 lub starszego: Nieobsługiwane. Ta funkcja ICE jest dostępna od Instalatora Windows w wersji 5.0.

Wynik

ICE102 publikuje następujące błędy.

Błąd ICE102 Opis
We wpisie tabeli MsiServiceConfig (MsiServiceConfig = )[1], ConfigType =%d nie jest prawidłowym parametrem. Powinno to należeć do przedziału od 3 do 7. Pole Config tabeli MsiServiceConfig nie zawiera jednej z dozwolonych wartości.
We wpisie tabeli MsiServiceConfig (MsiServiceConfig = )[1], argument =%s nie jest prawidłowym parametrem %s. Powinna to być %s. Pole Argument tabeli MsiServiceConfig nie zawiera jednej z dozwolonych wartości.
W wpisie tabeli MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], Actions=[3] nie jest prawidłowym parametrem. Powinna to być lista liczb całkowitych rozdzielonych wartościami null, które nie są ujemne. Pole Akcje MsiServiceConfigFailureActions nie zawiera tablicy dodatnich liczb całkowitych. Rozdziel wartości w tablicy według [~].
W wpisie tabeli MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], DelayActions=[4] nie jest prawidłowym parametrem. Powinna to być lista liczb całkowitych rozdzielonych wartościami null, które nie są ujemne. Pole DelayActions MsiServiceConfigFailureActions nie zawiera tablicy dodatnich liczb całkowitych. Rozdziel wartości w tablicy według [~].
W wpisie tabeli MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], liczba akcji (=%d) nie jest równa liczbie funkcji DelayActions (=%d). Powinny być równe. Liczba elementów w polach Actions i DelayActions MsiServiceConfigFailureActions tabeli nie są równe. Liczba elementów w tych tablicach powinna być taka sama.

 

ICE102 publikuje następujące ostrzeżenia.

Ostrzeżenie ICE104 Opis
W wpisie tabeli MsiServiceConfig (MsiServiceConfig = )[1], pole Argument jest puste. Zostanie użyta domyślna wartość preshutdown 180000 Opóźnienie czasowe wynosi 180000 milisekund, ponieważ pole Argument tabeli msiServiceConfig jest puste.
W wpisie tabeli MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], resetPeriod jest pozostawiony pusty. Zostanie on zastąpiony ciągiem INFINITE. Liczba błędów nigdy nie zostanie zresetowana, ponieważ pole ResetPeriod MsiServiceConfigFailureActions jest puste.