Metodo IAssemblyCache::UninstallAssembly (winsxs.h)

Il metodo UnistallAssembly rimuove un riferimento all'applicazione a un assembly dall'archivio affiancato. Se non sono presenti altri riferimenti all'assembly da altre applicazioni, l'assembly diventa inutilizzabile. Windows può rimuovere i file dell'assembly dall'archivio side-by-side e recuperare spazio su disco in un secondo momento.

Sintassi

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

Parametri

[in] dwFlags

Questo parametro deve essere 0.

[in] pszAssemblyName

Puntatore a un valore stringa con terminazione Null che contiene il nome sicuro completamente specificato dell'assembly. Se il nome completo non viene specificato, il risultato non è definito.

[in] pRefData

Puntatore a una struttura FUSION_INSTALL_REFERENCE che descrive l'applicazione che contiene il riferimento all'assembly da rimuovere. Se questo valore è Null, nessun riferimento all'assembly da parte delle applicazioni viene lasciato nell'archivio side-by-side e i file dell'assembly vengono rimossi.

Nota I caratteri \, /, :, ;, *, <, >e | non sono validi nell'ID di riferimento.
 

[out, optional] pulDisposition

Puntatore a un valore intero che descrive l'azione eseguita.

Il parametro pulDisposition può contenere uno dei valori seguenti o Null.

Valore Significato
IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED
I file di assembly sono stati rimossi dall'archivio side-by-side.
IASSEMBLYCACHE_UNINSTALL_DISPOSITION_STILL_IN_USE
I file dell'assembly non sono stati rimossi perché un'applicazione usa l'assembly.
IASSEMBLYCACHE_UNINSTALL_DISPOSITION_ALREADY_UNINSTALLED
L'assembly non esiste nell'archivio affiancato.
IASSEMBLYCACHE_UNINSTALL_DISPOSITION_DELETE_PENDING
Riservato.
IASSEMBLYCACHE_UNINSTALL_DISPOSITION_HAS_INSTALL_REFERENCES
I file dell'assembly non sono stati rimossi perché l'archivio side-by-side contiene un riferimento all'assembly da un'altra applicazione.
IASSEMBLYCACHE_UNINSTALL_DISPOSITION_REFERENCE_NOT_FOUND
Il riferimento specificato in pRefData non esiste nell'archivio side-by-side.

Valore restituito

Questo metodo può restituire uno di questi valori.

Valore restituito Descrizione
S_OK
I file dell'assembly sono stati rimossi dall'archivio side-by-side.
S_FALSE
L'operazione è riuscita e il riferimento all'assembly è stato rimosso. I file di assembly non sono stati rimossi dall'archivio affiancato per il motivo descritto dal valore restituito da pulDisposition.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winsxs.h
DLL Sxs.dll

Vedi anche

IAssemblyCache