Zarządzanie źródłami instalacji
Użytkownicy i aplikacje z uprawnieniami administracyjnymi mogą pobierać i modyfikować informacje o sieci, adresie URL i liście źródeł multimediów dla aplikacji Instalatora Windows i poprawek w systemie.
Instalator Windows 2.0: Nieobsługiwany. Administratorzy nie mogą odczytywać, zmieniać kolejności ani zastępować wpisów na liście źródłowej i nie mogą modyfikować ani pobierać właściwości listy źródłowej. Istnieje możliwość zarządzania źródłami sieci, ale nie źródłami adresów URL lub multimediów. Administratorzy mogą zarządzać listami źródłowymi tylko dla aplikacji instalowanych na maszynie lub aplikacji zainstalowanych dla użytkownika na obecnym koncie użytkownika. Uniemożliwia to administratorom korzystającym z wersji starszych niż Windows Installer 3.0 zarządzanie informacjami o liście źródeł dla wszystkich użytkowników systemu.
Instalator Windows 3.0 lub nowszy: Użytkownicy i aplikacje z uprawnieniami administratora mogą pobierać i modyfikować informacje o liście źródłowej dla aplikacji Instalatora Windows i poprawek zainstalowanych w systemie dla wszystkich użytkowników. Funkcje listy źródłowej mogą służyć do zarządzania listami źródłowymi i właściwościami listy źródłowej dla źródeł sieci, adresów URL i multimediów. Instalator może zmienić kolejność list źródłowych z procesu zewnętrznego.
Użytkownicy i aplikacje z uprawnieniami administracyjnymi mogą odczytywać i modyfikować następujące typy informacji o liście źródłowej:
- Listy źródłowe aplikacji i poprawek zainstalowanych dla wszystkich użytkowników w systemie.
- Listy źródłowe źródeł poprawek, które istnieją poza źródłami aplikacji.
- Listy źródłowe dla źródeł adresów URL i multimediów, które istnieją poza źródłami sieci.
- Właściwości listy źródłowej, takie jak MEDIAPACKAGEPATH, DiskPrompt, LastUsedSource, LastUsedTypei PackageName.
Funkcje list źródłowych mogą ograniczać zakres znalezionych list źródłowych, określając kontekst instalacji i kontekst użytkownika. Istnieją trzy możliwe konteksty instalacji: na użytkownika (niezarządzane), na maszynę i zarządzane przez użytkownika. Kontekst użytkownika może być określonym użytkownikiem lub wszystkimi użytkownikami w systemie.
Użytkownicy niebędący administratorami nie mogą modyfikować listy źródłowej wystąpienia aplikacji lub poprawki, które istnieją w kontekście przypisanym do innego użytkownika (zarządzanego lub niezarządzanego). Użytkownicy niebędący administratorami mogą modyfikować listy źródłowe wystąpienia aplikacji lub poprawki zainstalowane w następujących kontekstach:
- Ich własny kontekst dla każdego użytkownika (niezarządzany).
- Kontekst maszyny, ale tylko wtedy, gdy zasady DisableBrowse, AllowLockdownBrowsei AlwaysInstallElevated pozwalają im przeszukiwać źródła aplikacji lub poprawek.
- Ich własny kontekst zarządzany na użytkownika, ale tylko wtedy, gdy polityki DisableBrowse, AllowLockdownBrowsei AlwaysInstallElevated pozwalają na przeglądanie źródła aplikacji lub poprawki.
Administratorzy mogą modyfikować dowolną listę źródłową, którą może modyfikować nieadministrator. Ponadto administratorzy i aplikacje z uprawnieniami administracyjnymi mogą modyfikować listy źródłowe aplikacji lub poprawki zainstalowane w następujących kontekstach:
- Kontekst dla każdej maszyny.
- Ich własny kontekst (niezarządzany) na użytkownika lub własny kontekst zarządzany na użytkownika.
- Kontekst zarządzany przez innego użytkownika.
Notatka
Użytkownicy oraz aplikacje z uprawnieniami administracyjnymi nie mogą modyfikować listy źródłowej wystąpienia aplikacji lub poprawki zainstalowanej w kontekście per-user (niezarządzanym) innego użytkownika.
Zarządzanie źródłami sieci i adresów URL dla produktów i poprawek
Użyj funkcji MsiSourceListAddSourceEx, aby dodać lub zmienić kolejność źródłowej listy źródeł sieci i adresów URL dla poprawki lub aplikacji w określonym kontekście. Użyj parametru dwContext, aby określić kontekst instalacji. Użyj parametru szUserSid, aby określić kontekst użytkownika.
Użyj funkcji MsiSourceListAddSourceEx, aby utworzyć listę źródłową poprawki, która nie została jeszcze zastosowana do żadnej aplikacji w określonym kontekście. Może to być przydatne podczas rejestrowania poprawki, aby mieć podwyższony poziom uprawnień. Aby uzyskać więcej informacji na temat rejestrowania podwyższonych uprawnień dla poprawki, sprawdź Patching Per-User Managed Applications.
Użyj funkcji MsiSourceListClearSource, aby usunąć istniejące źródło aplikacji lub poprawki w określonym kontekście. Usunięcie bieżącego źródła aplikacji lub poprawki wymusza, aby instalator przeszukiwał listę źródłową przy następnym wymaganym źródle.
Użyj funkcji MsiSourceListEnumSources, aby wyliczyć źródła na liście źródłowej określonej poprawki lub aplikacji.
Zarządzanie źródłami multimediów dla produktów i poprawek
Użyj funkcji MsiSourceListAddMediaDisk, aby dodać lub zaktualizować informacje o dysku źródła nośnika zarejestrowanej aplikacji lub poprawki. Każdy wpis jest jednoznacznie identyfikowany przez identyfikator dysku. Jeśli dysk już istnieje, zostanie zaktualizowany nową etykietą woluminu i wartościami komunikatów dysku. Jeśli dysk nie istnieje, zostanie utworzony nowy wpis dysku z nowymi wartościami.
Użyj funkcji MsiSourceListClearMediaDisk, aby usunąć istniejący zarejestrowany dysk w źródle multimediów dla aplikacji lub poprawki w określonym kontekście.
Użyj funkcji MsiSourceListEnumMediaDisks, aby wyliczyć listę dysków zarejestrowanych w źródle multimediów dla aplikacji lub poprawki.
Pobieranie i modyfikowanie informacji o liście źródłowej
Użyj funkcji MsiSourceListGetInfo i MsiSourceListSetInfo, aby pobrać lub zmodyfikować informacje o liście źródłowej aplikacji lub poprawki w określonym kontekście. Użyj parametru dwContext, aby określić kontekst instalacji. Użyj parametru szUserSid, aby określić kontekst użytkownika.
Można uzyskać dostęp do właściwości listy źródłowej, takich jak MEDIAPACKAGEPATH, DiskPrompt, LastUsedSource, LastUsedTypei PackageName.
Notatka
Właściwość listy źródłowej LastUsedType może być tylko odczytywana. Nie można go ustawić bezpośrednio przy użyciu funkcji MsiSourceListSetInfo.
Czyszczenie pełnej listy źródłowej lub wymuszanie rozpoznawania źródła
Użyj funkcji MsiSourceListClearAllEx, aby usunąć wszystkie istniejące źródła danego typu źródłowego dla określonego wystąpienia aplikacji lub poprawki. Rejestracja poprawek jest również usuwana, jeśli poprawka nie jest zainstalowana przez żadną aplikację w tym samym kontekście. Użyj parametru dwContext, aby określić kontekst instalacji. Użyj parametru szUserSid, aby określić kontekst użytkownika.
Użyj MsiSourceListForceResolutionEx, aby wyczyścić ostatni używany wpis źródłowy dla aplikacji lub poprawki w określonym kontekście. Ta funkcja usuwa rejestrację właściwości o nazwie LastUsedSource. Ta funkcja nie ma wpływu na zarejestrowaną listę źródłową. Wyczyszczenie rejestracji LastUsedSource wymusza, aby instalator przeprowadził ustalenie źródła względem zarejestrowanych źródeł następnym razem, gdy będzie potrzebne źródło.