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