Funkce DismEnableFeature
Povolí funkci na obrázku. Funkce jsou identifikované názvem a dají se volitelně svázat s balíčkem.
Syntaxe
HRESULT WINAPI DismEnableFeature(
_In_ DismSession Session,
_In_ PCWSTR FeatureName,
_In_opt_ PCWSTR Identifier,
_In_opt_ DismPackageIdentifier PackageIdentifier,
_In_ BOOL LimitAccess,
_In_opt_ PCWSTR *SourcePaths,
_In_opt_ UINT SourcePathCount,
_In_ BOOL EnableAll,
_In_opt_ HANDLE CancelEvent,
_In_opt_ DISM_PROGRESS_CALLBACK Progress,
_In_opt_ PVOID UserData
);
Parametry
relace [in]
Platná DismSession. DismSession musí být přidružen k obrázku. Můžete přiřadit relaci k obrázku pomocí DismOpenSession.
FeatureName [in]
Název funkce, která je povolená. Pokud chcete povolit více než jednu funkci, oddělte jednotlivé názvy funkcí středníkem.
identifikátor [v, volitelný]
Volitelný. Buď absolutní cesta k souboru .cab, nebo název balíčku nadřazeného balíčku funkce, která se má povolit.
PackageIdentifier [in, optional]
Volitelný. Platná hodnota výčtu DismPackageIdentifier.
OmezenýPřístup [in]
Tento parametr se ignoruje od Windows 8.1 a Windows Serveru 2012 R2.
Windows 8 a Windows Server 2012:
Logická hodnota označující, jestli má být služba Windows Update (WU) kontaktována jako zdrojové umístění pro stahování souborů, pokud se žádné nenajde v jiných zadaných umístěních. Před kontrolou služby WU nástroj DISM zkontroluje soubory v SourcePaths poskytnutých a ve všech umístěních zadaných v registru podle skupinových zásad. Pokud jsou soubory potřebné k povolení této funkce v počítači stále k dispozici, bude tento příznak ignorován.
Hodnota | Popis |
---|---|
PRAVDIVÝ | Nekontrolujte WU kvůli opravným souborům. |
NEPRAVDA | Výchozí. Zkontrolujte soubory oprav služby WU. |
SourcePaths [in, optional]
Tento parametr se ignoruje od Windows 8.1 a Windows Serveru 2012 R2.
Windows 8 a Windows Server 2012:
Seznam umístění zdrojů, kde lze zkontrolovat soubory potřebné k aktivaci funkce.
SourcePathCount [in, optional]
Tento parametr se ignoruje od Windows 8.1 a Windows Serveru 2012 R2.
Windows 8 a Windows Server 2012:
Počet zadaných zdrojových umístění.
EnableAll [in]
Povolte všechny závislosti funkce. Pokud zadanou funkci nebo některou z jejích závislostí nelze povolit, žádná z nich se nezmění z existujícího stavu.
Hodnota | Popis |
---|---|
PRAVDIVÝ | Povolte všechny závislosti funkce. |
NEPRAVDIVÝ | Povolte jenom zadanou funkci. |
CancelEvent [in, nepovinné]
Volitelný. Můžete nastavit CancelEvent pro tuto funkci, aby se operace zrušila, když je klient signalizoval. Pokud cancelEvent obdržíte ve fázi, kdy operaci nelze zrušit, operace bude pokračovat a vrátit kód úspěchu. Pokud je obdržen CancelEvent a operace je zrušena, stav obrazu je neznámý. Než budete pokračovat, měli byste ověřit stav image, nebo zahoďte změny a začněte znovu.
pokrok [in, optional]
Volitelný. Ukazatel na klientem definovaný DismProgressCallback.
UserData [in, optional]
Volitelný. Uživatelsky definovaná vlastní data
Návratová hodnota
Pokud je funkce úspěšná, návratová hodnota je S_OK
. Funkce může také vrátit jednu z následujících hodnot, pokud bude úspěšná:
Návratový kód | Popis |
---|---|
|
Pokud je relace online, je potřeba počítač restartovat. |
|
relace je potřeba znovu načíst. |
Pokud funkce selže, návratová hodnota je chybová hodnota HRESULT.
Poznámky
Pokud je tato funkce součástí základního balíčku, nemusíte zadávat žádné informace o balíčku. Pokud je funkce ve volitelném balíčku nebo balíčku funkcí, který již byl nainstalován v obrazu, zadejte název balíčku v parametru Identifikátor a jako PackageIdentifierzadejte DismPackageName. Pokud nelze funkci povolit kvůli nepovolené nadřazené funkci, vrátí se speciální kód chyby. K povolení nadřazených funkcí můžete použít EnableAll, když povolíte zadané funkce, nebo můžete použít DismGetFeatureParent k vytvoření výčtu nadřazených funkcí a jejich povolení.
Důležitý
Pokud funkce, která má být povolena, není součástí základního balíčku, musíte přidat nadřazený volitelný balíček s DismAddPackage před povolením funkce. Nezadávejte cestu k souboru .cab volitelného balíčku, který není přidán do obrazu, v parametru Identifikátor . Pokud zadáte balíček, který nebyl přidán, a zadáte DismPackagePath jako PackageIdentifier, funkce se úspěšně dokončí, ale funkce nebude povolena.
Poznámka
LimitAccess, SourcePaths, SourcePathCounta EnableAll jsou podporované jenom ve Windows 8 a Windows Serveru 2012.
Příklad
HRESULT hr = S_OK;
hr = DismEnableFeature(Session, “WindowsMediaPlayer”, NULL, PackageNone, TRUE, NULL, 0, FALSE, NULL, NULL, NULL);
Požadavky
Požadavek | Popis |
---|---|
Podporované hostitelské platformy | Rozhraní DISM API lze použít v jakémkoli operačním systému podporovaném sadou Windows Assessment and Deployment Kit (Windows ADK). Další informace naleznete v Windows ADK Technical Reference. |
Podporované platformy imagí | Windows 7, Windows Server 2008 R2, Windows PE 3.0, Windows 8, Windows Server 2012, Windows Preinstallation Environment (Windows PE) 4.0, Windows 8.1, Windows Server 2012 R2, Windows 10, Windows Server 2016 |
Minimální podporovaný klient | Windows 7 [pouze desktopové aplikace] |
Minimální podporovaný server | Windows Server 2008 R2 [jenom desktopové aplikace] |
Záhlaví | DismAPI.h |
Knihovna | DismAPI.lib |
Knihovna DLL | DismAPI.dll |