Click to Rate and Give Feedback
MSDN
MSDN Library
IAssemblyCache
 UninstallAssembly Method of the IAs...
UninstallAssembly Method of the IAssemblyCache Interface

The UnistallAssembly method removes an application reference to an assembly from the side-by-side store. If there are no other references to the assembly by other applications, the assembly's files are removed from the side-by-side store.

HRESULT UninstallAssembly(
  [in]             DWORD dwFlags,
  [in]             LPCWSTR pszAssemblyName,
  [in]             LPCFUSION_INSTALL_REFERENCE pRefData,
  [out, optional]  ULONG* pulDisposition
);

Parameters

dwFlags

This parameter must be 0.

pszAssemblyName

A pointer to a null-terminated string value that contains the fully-specified strong name of the assembly. If the full name is not provided, the result is undefined.

pRefData

A pointer to a FUSION_INSTALL_REFERENCE structure that describes the application that holds the reference to the assembly being removed. If this value is null, no references to the assembly by applications are left in the side-by-side store and the assembly's files are removed.

Note  The characters \, /, :, ;, *, <, >, and | are invalid in the reference ID.

pulDisposition

A pointer to an integer value that describes the action performed.

The pulDisposition parameter can contain one of the following values or null.

Value Meaning

IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED

The assembly files have been removed from the side-by-side store.

IASSEMBLYCACHE_UNINSTALL_DISPOSITION_STILL_IN_USE

The assembly's files have not been removed because an application is using the assembly.

IASSEMBLYCACHE_UNINSTALL_DISPOSITION_ALREADY_UNINSTALLED

The assembly does not exist in the side-by-side store.

IASSEMBLYCACHE_UNINSTALL_DISPOSITION_DELETE_PENDING

Reserved.

IASSEMBLYCACHE_UNINSTALL_DISPOSITION_HAS_INSTALL_REFERENCES

The assembly's files have not been removed because the side-by-side store contains a reference to the assembly by another application.

IASSEMBLYCACHE_UNINSTALL_DISPOSITION_REFERENCE_NOT_FOUND

The reference specified in pRefData does not exist in the side-by-side store.

Return Value

Return value Description

S_OK

The files of the assembly have been removed from the side-by-side store.

S_FALSE

The operation succeeded and the reference to the assembly was removed. The assembly files were not removed from the side-by-side store for the reason described by the value returned by pulDisposition.

Requirements

Client Requires Windows Vista.
Server Requires Windows Server 2008.
DLL

Requires Sxs.dll.

See Also

IAssemblyCache


Send comments about this topic to Microsoft

Build date: 11/1/2007

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2008 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker