1 out of 1 rated this helpful - Rate this topic

AddInStore Class

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

Namespace:  System.AddIn.Hosting
Assembly:  System.AddIn (in System.AddIn.dll)
public static class AddInStore

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.

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);


System.Object
  System.AddIn.Hosting.AddInStore
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
PipelineComponents.store or PipelineSegments.store?
In Visual Studio 2008 Beta 2, the name of the root cache file is PipelineComponents.store, not PipelineSegments.store. Maybe this changed in the RTM -- I haven't tried it yet.

[gh] Yes, it was changed to PipelineSegments.store. -- Glenn