Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

AddInStore Class

Provides methods to store and find information about available add-ins and pipeline segments.

System.Object
  System.AddIn.Hosting.AddInStore

Namespace:  System.AddIn.Hosting
Assembly:  System.AddIn (in System.AddIn.dll)

public static class AddInStore

The AddInStore type exposes the following members.

  NameDescription
Public methodStatic memberFindAddInFinds a specific add-in.
Public methodStatic memberFindAddIns(Type, PipelineStoreLocation)Finds all add-ins for a specified host view of the add-in at a location specified by the PipelineStoreLocation enumeration value.
Public methodStatic memberFindAddIns(Type, PipelineStoreLocation, String[])Finds all add-ins for a specified host view of the add-in at the location specified by a PipelineStoreLocation value and an optional add-ins folder.
Public methodStatic memberFindAddIns(Type, String, String[])Finds all add-ins for a specified host view of the add-in from a specified root directory.
Public methodStatic memberRebuild(PipelineStoreLocation)Rebuilds the pipeline segments cache and includes new segments at the location specified by a PipelineStoreLocation value.
Public methodStatic memberRebuild(String)Rebuilds the pipeline segments cache and includes new segments from a specified root directory.
Public methodStatic memberRebuildAddInsRebuilds the add-in cache and includes new add-ins from a specified root directory.
Public methodStatic memberUpdate(PipelineStoreLocation)Updates the pipeline segments cache with new segments at the location specified by a PipelineStoreLocation value.
Public methodStatic memberUpdate(String)Updates the pipeline segments cache with new segments from a specified root directory.
Public methodStatic memberUpdateAddInsUpdates the add-in cache and includes new add-ins at a specified location.
Top

Use this class to build, rebuild, and update two cache files, as described in the following table.

Cache file

Methods that create the file

PipelineSegments.store

This file is located in the root directory of the pipeline directory structure.

Update

Updates the file with new pipeline segments. If no new segments are installed, this method just validates the cache.

Rebuild

Rebuilds the file and includes new pipeline segments.

AddIns.store

This file is located in a directory that contains one or more add-in subdirectories. If this directory is in the pipeline directory structure, it must be named AddIns.

UpdateAddIns

Updates the file with new add-ins at a specified location. Call this method if your add-ins are outside the pipeline directory structure.

If no new add-ins are installed, this method just validates the cache.

RebuildAddIns

Rebuilds the file and includes add-ins at a specified location. Call this method if your add-ins are outside the pipeline directory structure.

Update

If the add-ins are in the pipeline directory structure, this method updates the file with new add-ins.

Rebuild

If the add-ins are in the pipeline directory structure, this method rebuilds the file and includes new add-ins.

These methods create the cache files if they do not previously exist.

After the cache files are created, use the FindAddIns method to examine the files to find all add-ins that match a specified host view of the add-in. You can also use the FindAddIn method to find a specific add-in.

Security noteSecurity Note

It is unsupported to allow untrusted users or entities to access PipelineSegments.store and Addins.store. Doing so can cause data corruption issues for applications.

The following example shows how to update cache files.

// Get path for the pipeline root. 
// Assumes that the current directory is the   
// pipeline directory structure root directory. 
String pipeRoot = Environment.CurrentDirectory;

// Update the cache files of the 
// pipeline segments and add-ins. 
string[] warnings = AddInStore.Update(pipeRoot);

foreach (string warning in warnings)
{
    Console.WriteLine(warning);
}

// Search for add-ins of type Calculator (the host view of the add-in) 
// specifying the host's application base, instead of a path, 
// for the FindAddIns method.

Collection<AddInToken> tokens = 
            AddInStore.FindAddIns(typeof(Calculator),PipelineStoreLocation.ApplicationBase);

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2015 Microsoft