IVsUserSettingsQuery Arabirim

Tanım

Bir VSPackage 'ın, ayarlarının kaydedilip kaydedilmeyeceğini belirtmek için izin verir.

public interface class IVsUserSettingsQuery
public interface class IVsUserSettingsQuery
__interface IVsUserSettingsQuery
[System.Runtime.InteropServices.Guid("334E1F15-7D97-4231-81B0-998E4A960E69")]
[System.Runtime.InteropServices.InterfaceType(1)]
public interface IVsUserSettingsQuery
[<System.Runtime.InteropServices.Guid("334E1F15-7D97-4231-81B0-998E4A960E69")>]
[<System.Runtime.InteropServices.InterfaceType(1)>]
type IVsUserSettingsQuery = interface
Public Interface IVsUserSettingsQuery
Türetilmiş
Öznitelikler

Örnekler

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

Açıklamalar

Implemenonun notları

Bir VSPackage 'ın ayarları bir ayarlar dosyasına kaydedilmekte olması gerekiyorsa uygulayın Visual Studio .

Arayanlar İçin Notlar

Bu arabirim, yalnızca bir VSPackage 'ın ayarlarının tasarrufunu denetlemelidir olması gerekiyorsa uygulanmalıdır.

Örneğin, bir VSPackage, kullanıcıların geçerli oturum için ayarları değiştirmesine izin verebilir, ancak yalnızca bir Kaydet düğmesine tıkladıklarında depolanan bilgileri güncelleştirebilir.

Bir VSPackage bu arabirimi uygulamadıysa, durumu her zaman verilir.

Tek bir VSPackage, birden fazla özel ayar noktasını (Ayarlar kategorisi) destekleyebilir. Bu nedenle, uygulamasının NeedExport belirli bir ayar grubunun kaydedilmesi gerekip gerekmediğini belirlemek için sağlanan özel ayarlar NOKTASıNıN GUID veya ayarlar kategori bağımsız değişkenini denetlemesi gerekir.

Örneğin, aşağıdaki örnekte, VSPackage her zaman komut çubuğunun durumunun kaydedildiği, ancak bir bayrak ayarlandıysa yalnızca anahtar bağlama durumunun kaydedilmesini ister.

Yöntemler

NeedExport(String, Int32)

Belirtilen kategorinin ayarlarının dışarı aktarılmasını gerektirip gerektirmediğini belirtir.

Şunlara uygulanır