Udostępnij za pośrednictwem


Metoda IVsUserSettings.ExportSettings — (String, IVsSettingsWriter)

 

Zapisuje konfigurację VSPackage przy użyciu Visual Studio mechanizmu ustawienia po opcji eksportu importowania i eksportowania ustawień funkcja dostępna w IDE narzędzia menu jest wybierany przez użytkownika.

Przestrzeń nazw:   Microsoft.VisualStudio.Shell.Interop
Zestaw:  Microsoft.VisualStudio.Shell.Interop.8.0 (w Microsoft.VisualStudio.Shell.Interop.8.0.dll)

Składnia

int ExportSettings(
    string pszCategoryGUID,
    IVsSettingsWriter pSettings
)
int ExportSettings(
    String^ pszCategoryGUID,
    IVsSettingsWriter^ pSettings
)
abstract ExportSettings : 
        pszCategoryGUID:string *
        pSettings:IVsSettingsWriter -> int
Function ExportSettings (
    pszCategoryGUID As String,
    pSettings As IVsSettingsWriter
) As Integer

Parametry

  • pszCategoryGUID
    Type: System.String

    [in] Identyfikator GUID grupy ustawień do wyeksportowania. Jest to identyfikujące identyfikator GUID punktu ustawienia niestandardowe. Więcej informacji dotyczących punktów ustawienia niestandardowe można znaleźć w temacie Rejestrowanie Obsługa trwałości ustawienia

Wartość zwracana

Type: System.Int32

Jeśli metoda zakończy się pomyślnie, zwraca S_OK. Jeśli nie, zwraca kod błędu.

Uwagi

Pojedynczy VSPackage może obsługiwać więcej niż jeden punkt ustawienia niestandardowe (kategoria ustawienia).

Dlatego implementacje ExportSettings sprawdzić kategorii przekazany identyfikator GUID i wybierz poprawny mechanizm Zapisywanie stanu określonego przez określonego punktu ustawienia niestandardowe.

W poniższym przykładzie ExportSettings wywołuje różne implementacje utrwalanie polecenia paska stanu zamiast utrwalanie stan powiązania klucza.

Oprócz danych zapisanych w wykonywaniu ExportSettings, interfejs API ustawienia również automatycznie zapisuje w wersji Visual Studio używany do eksportowania informacji o konfiguracji.

Przykłady

W tym przykładzie implementacji ExportSettings wybierze między dwoma różnymi metodami eksportowania w zależności od pszCategoryGUID argumentu.

STDMETHOD(ExportSettings)(WCHAR *pszCategoryGUID, IVsSettingsWriter *pSettings)
{
    CLSID clsidCategory;
    HRESULT hr;
    hr = CLSIDFromString(pszCategoryGUID, &clsidCategory);
    IfFailGo(hr);
    //Delegate to the right internal implementation based on the requested category

    if (GUID_Profiles_CommandBars == clsidCategory) {
        hr = ExportSettings_CommandBars(pSettings);
    }else if (GUID_Profiles_KeyBindings == clsidCategory) {
        hr = ExportSettings_KeyBindings(pSettings);
    }else{
        hr = E_UNEXPECTED;
    }
 Error:
    return hr;
};

HRESULT ExportSettings_CommandBars(IVsSettingsWriter *pSettings)
{
    if (!pSettings)
        return E_INVALIDARG;

    hr = pSettings->WriteSettingString(c_szFirstSettingName, L"Value1");
    IfFailGo(hr);

    int cRandomTrash = 12345;
    BYTE *pRandomTrash = (BYTE *)VSAlloc(cRandomTrash);
    if (pRandomTrash){
        hr = pSettings->WriteSettingBytes(c_szRandomTrashBytes, pRandomTrash, cRandomTrash);
        IfFailGo(hr);
        hr = pSettings->WriteSettingLong(c_szRandomTrashLength, cRandomTrash);
        IfFailGo(hr);
    }

 Error:
    return hr;
};

HRESULT ExportSettings_KeyBindings(IVsSettingsWriter *pSettings)
{
    if (!pSettings)
        return E_INVALIDARG;

    hr = pSettings->WriteSettingString(c_szBreakPointWindow, L"Ctrl + Alt + B");
    IfFailGo(hr);

 Error:
    return hr;
};

Zobacz też

ImportSettings
IVsUserSettingsQuery
Interfejs IVsUserSettings
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Obsługa ustawień użytkownika
Porady: eksportowanie ustawień za pomocą zestawy międzyoperacyjne
Porady: umożliwia importowanie ustawień zestawy międzyoperacyjne
Working with Settings

Powrót do początku