Skip to main content

IExtensionManager Interface

Loads extensions and uses the extensions' factories to provide services.

Methods

MethodDescription
Add(extensionAssembly)Adds an extension assembly directly to the manager.
GetCacheLocations()Gets extensions cache locations.
GetExtensionPackageRootFolderName()Gets the root folder name used in extension's package.
Load(extensionReference)Loads an extension assembly from an extension reference string.

WixToolset.Extensibility.dll version 5.0.0+41e11442b2ca93e444b60213b5ae99dcbab787d8

Add(extensionAssembly) Method

Adds an extension assembly directly to the manager.

Declaration

public void Add(
System.Reflection.Assembly extensionAssembly
)

Parameters

ParameterTypeDescription
extensionAssemblySystem.Reflection.AssemblyExtension assembly.

GetCacheLocations() Method

Gets extensions cache locations.

Declaration

public System.Collections.Generic.IReadOnlyCollection<WixToolset.Extensibility.Data.IExtensionCacheLocation> GetCacheLocations()

Return value

System.Collections.Generic.IReadOnlyCollection<WixToolset.Extensibility.Data.IExtensionCacheLocation> List of cache locations where extensions may be found.

GetExtensionPackageRootFolderName() Method

Gets the root folder name used in extension's package.

Declaration

public string GetExtensionPackageRootFolderName()

Return value

string Root folder name to find extension in a package.

Load(extensionReference) Method

Loads an extension assembly from an extension reference string.

Declaration

public void Load(
string extensionReference
)

Parameters

ParameterTypeDescription
extensionReferencestringReference to the extension.

Return value

void The loaded assembly. This assembly can be ignored since the extension manager maintains the list of loaded assemblies internally.

Remarks

extensionReference can be in several different forms:

  • Full path to an extension file (C:\MyExtensions\MyExtension.Example.wixext.dll):
  • Reference to latest version of an extension in the cache (MyExtension.Example.wixext):
  • Versioned reference to specific extension in the cache (MyExtension.Example.wixext/1.0.2):
  • Relative path to an extension file (....\MyExtensions\MyExtension.Example.wixext.dll):