Método IVsUserSettingsQuery.NeedExport (String, Int32)

 

Publicado: abril de 2016

Indica se a categoria especificada requer uma exportação de suas configurações.

Namespace:   Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop.8.0 (em Microsoft.VisualStudio.Shell.Interop.8.0.dll)

Sintaxe

int NeedExport(
    string szCategoryGUID,
    out int pfNeedExport
)
int NeedExport(
    String^ szCategoryGUID,
    [OutAttribute] int% pfNeedExport
)
abstract NeedExport : 
        szCategoryGUID:string *
        pfNeedExport:int byref -> int
Function NeedExport (
    szCategoryGUID As String,
    <OutAttribute> ByRef pfNeedExport As Integer
) As Integer

Parâmetros

  • szCategoryGUID
    Type: System.String

    [in] GUID que identifica a categoria de configurações específicas (definida por um ponto de configurações personalizado) que está sendo consultada.

  • pfNeedExport
    Type: System.Int32

    [out] Valor booliano retornado para indicar se o IDE deve chamar a implementação de configurações de exportação do VSPackage.

Valor Retornado

Type: System.Int32

Se o método for bem-sucedido, ele retornará S_OK. Se ele falhar, ele retorna um código de erro.

Comentários

Um único VSPackage pode dar suporte a mais de um ponto de configurações personalizado (configurações de categoria). Portanto, as implementações de NeedExport deve verificar o ponto de configurações personalizado fornecido identificando GUID ou configurações de argumento de categoria, para determinar se um determinado grupo de configurações precisa ser salvo.

Exemplos

Neste exemplo, o VSPackage solicitações sempre que seu estado de barra de comando é salva, mas somente as solicitações de que seu estado de associação de chave a ser salvo um sinalizador foi definido.

STDMETHOD(NeedExport)(WCHAR* pszCategoryGUID, BOOL *pfNeedExport)
{
    if (!pfNeedExport)
        return E_INVALIDARG;

    CLSID clsidCategory;
    HRESULT hr= S_OK;

    hr = CLSIDFromString(pszCategoryGUID, &clsidCategory);
    IfFailGo(hr);
    if (GUID_Profiles_CommandBars == clsidCategory) {
        *pfNeedExport = TRUE; //Always export Command Bar Configuration
    }else if (GUID_Profiles_KeyBindings == clsidCategory) {
        *pfNeedExport = FALSE; //By Default don't export key bindings
        if (m_fMake_Permanent)
            *pfNeedExport = TRUE; //Export if user wants current configuration saved.
    }else{
        hr = E_UNEXPECTED;
    }
 Error:
    return hr;
}

Confira Também

IVsUserSettings
ImportSettings
Interface IVsUserSettingsQuery
Namespace Microsoft.VisualStudio.Shell.Interop
Suporte para configurações de usuário
Como: usar Assemblies de interoperabilidade para importar configurações
Working with Settings

Retornar ao início