Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nekladné vlastní akce, které volají knihovny dynamického propojení nebo skripty , mohou přistupovat ke spuštěné instalaci pro dotazování nebo úpravu atributů běžné instalační relace. Pro každý proces může existovat pouze jeden objekt relace a vlastní skrypty akcí se nesmí pokoušet vytvořit jinou relaci.
Vlastní akce můžou přidávat, upravovat nebo odebírat pouze dočasné řádky, sloupce nebo tabulky z databáze. Vlastní akce nemohou upravovat trvalá data v databázi, například data, která jsou součástí databáze uložené na disku.
Pokud chcete získat přístup ke spuštěné instalaci, vlastní akce, které volají dynamické knihovny (DLL), jsou předány popisovač typu MSIHANDLE pro aktuální relaci jako jediný argument vstupního bodu knihovny DLL pojmenovaného ve sloupci Target v tabulce CustomAction . Vzhledem k tomu, že instalační program tento popisovač poskytuje, vlastní akce by jej neměla zavřít, například je funkce vlastní akce deklarována následujícím způsobem, aby přijala popisovač hInstall z instalačního programu.
UINT __stdcall CustomAction(MSIHANDLE hInstall)
Pro zajištění přístupu jen pro čtení k aktuální databázi získáte popisovač databáze voláním MsiGetActiveDatabase. Další informace naleznete v tématu Získání popisovače databáze.
Vlastní akce napsané v jazyce VBScript nebo JScript mají přístup k aktuální instalační relaci pomocí Objekt relace. Instalační program vytvoří Session objekt s názvem Session, který odkazuje na aktuální instalaci. Pro přístup jen pro čtení k aktuální databázi použijte vlastnost Database objektu Session.
Vzhledem k tomu, že skript se spouští z kontextu objektu Session, není vždy nutné plně kvalifikovat vlastnosti a metody. V následujícím příkladu může odkaz Me při použití jazyka VBScript nahradit Session objektu, například následující tři řádky jsou ekvivalentní.
Session.SetInstallLevel 1
Me.SetInstallLevel 1
SetInstallLevel 1
Nelze přistupovat k současné relaci instalačního programu z vlastních akcí, které spouštějí spustitelné soubory pomocí příkazového řádku, například vlastní akce typu 2 a vlastní akce typu 18.
odložené vykonání vlastní akce
Z vlastní akce odloženého spuštění nelze získat přístup k aktuální relaci instalačního programu nebo ke všem datům vlastností. Další informace naleznete v tématu Získání informací o kontextu pro odložené provádění vlastních akcí.
Související témata