Interfejs IVsSettingsReader
Zapewnia dostęp do odczytu do informacji o konfiguracji przechowywane w Visual Studio pliku ustawień.
Przestrzeń nazw: Microsoft.VisualStudio.Shell.Interop
Zestaw: Microsoft.VisualStudio.Shell.Interop.8.0 (w Microsoft.VisualStudio.Shell.Interop.8.0.dll)
Składnia
[GuidAttribute("38C38501-1428-4ABB-8B27-2F0E1E6DD757")]
[InterfaceTypeAttribute(1)]
public interface IVsSettingsReader
[GuidAttribute("38C38501-1428-4ABB-8B27-2F0E1E6DD757")]
[InterfaceTypeAttribute(1)]
public interface class IVsSettingsReader
[<GuidAttribute("38C38501-1428-4ABB-8B27-2F0E1E6DD757")>]
[<InterfaceTypeAttribute(1)>]
type IVsSettingsReader = interface end
<GuidAttribute("38C38501-1428-4ABB-8B27-2F0E1E6DD757")>
<InterfaceTypeAttribute(1)>
Public Interface IVsSettingsReader
Metody
Nazwa | Opis | |
---|---|---|
![]() |
ReadCategoryVersion(Int32, Int32, Int32, Int32) | Zwraca wartość obiektu wersji kategorii przechowywane w Visual Studio pliku ustawień. |
![]() |
ReadFileVersion(Int32, Int32, Int32, Int32) | Zwraca wartość obiektu wersji plików przechowywanych w Visual Studio pliku ustawień. |
![]() |
ReadSettingAttribute(String, String, String) | Zwraca wartość atrybutu obiektu przechowywane w Visual Studio pliku ustawień. |
![]() |
ReadSettingBoolean(String, Int32) | Zwraca wartość Boolean obiektu, przechowywane w Visual Studio pliku ustawień. |
![]() |
ReadSettingBytes(String, Byte, Int32, Int32) | Zwraca dane przechowywane w tablicy Visual Studio pliku ustawień. |
![]() |
ReadSettingLong(String, Int32) | Zwraca wartość Long obiektu przechowywane w Visual Studio pliku ustawień. |
![]() |
ReadSettingString(String, String) | Zwraca wartość obiektu ciągu przechowywane w Visual Studio pliku ustawień. |
![]() |
ReadSettingXml(String, Object) | Zwraca wartość obiektu XML przechowywane w Visual Studio pliku ustawień. |
![]() |
ReadSettingXmlAsString(String, String) | Zwraca wartość ustawienia XML jako obiekt ciągu przechowywane w Visual Studio pliku ustawień. |
![]() |
ReportError(String, UInt32) | Zgłasza stan błędu w pliku ustawień operacji odczytu. |
Uwagi
Ten interfejs jest implementowany przez środowisko.
Uwagi dotyczące wywoływania
Wywołanie IVsSettingsReader interfejs, gdy pobieranie pakietu VSPackage przechowywane informacje o konfiguracji z Visual Studio pliku ustawień.
Uwagi dotyczące implementacji
Tylko pakiety VSPackages, które zostały zarejestrowane ich obsługę Visual Studio stosowania ustawień wprowadzić mechanizm IVsSettingsReader interfejsu. Aby uzyskać więcej informacji o rejestrowaniu pakietu VSPackage, który obsługuje Visual Studio mechanizmu ustawień, zobacz pomocy technicznej dla ustawień użytkownika.
Gdy została wybrana operacja importowania ustawień z importowania i eksportowania ustawień funkcji dostępnych w IDE narzędzia przekazuje środowiska menu IVsSettingsReader interfejsu pakietu VSPackage ustawienia importowania metody, która korzysta z interfejsu do odczytu danych konfiguracji.Visual Studio SDK Obsługuje kilka metod importowania:
Dla zestawu międzyoperacyjnego opartych na pakiety VSPackages, metodę importowania jest implementacją VSPackage IVsUserSettings interfejsu ImportSettings metody.
Dla większości Framework pakietu zarządzania opartych na pakiety VSPackages, metodę importowania jest implementacją VSPackage IProfileManager interfejsu LoadSettingsFromXml metody.
Dla zarządzanych Framework pakietu opartych na implementowanie pakiety VSPackages DialogPage Ten interfejs jest interfejs, metodę importowania LoadSettingsFromXml metody.
Importowanie ustawień więcej informacji, zobacz porady: Użyj zestawy międzyoperacyjne do ustawienia importowania lub Importowanie ustawień.
Przykłady
W poniższym przykładzie jest implementacją ImportSettings, która odczytuje wartości trzy ustawienia. Metoda ta wykorzystuje niektóre pobranej wartości do określenia, jak pobrać inne wartości: rozmiar buforu wejściowego pTrashBytes jest określana przez pobieranie wartości lTrashLength pobrane wcześniej.
[!UWAGA]
Najlepszym rozwiązaniem przechowuje buforów lub ciągu jest zapisanie rozmiar buforu przechowywanych lub ciągu, a także sam obiekt. Informacje o rozmiarze należy zawsze używać podczas pobierania zapisane buforu ciągu w celu uniknięcia przepełnienia buforu.
HRESULT ImportSettings_CommandBars(IVsSettingsReader *pSettings, UserSettingsFlags flags, BOOL *pfRestartRequired)
{
if (!pSettings)
return E_INVALIDARG;
if (pfRestartRequired)
{
*pfRestartRequired = FALSE; //Nobody should require a restart!!
}
CComBSTR bstrFirstSettingName;
long lTrashLength = 0;
BYTE *pTrashBytes = NULL;
//Determines whether we can treat import as an additive operation, or a reset all settings operation
BOOL fResetCompletely = FALSE;
if (flags & USF_ResetOnImport)
fResetCompletely = TRUE;
hr = pSettings->ReadSettingString(c_szFirstSettingName, &bstrFirstSettingName);
IfFailGo(hr);
hr = pSettings->ReadSettingLong(c_szRandomTrashLength, &lTrashLength);
IfFailGo(hr);
if (lTrashLength > 0)
{
pTrashBytes = (BYTE*)VSAlloc(lTrashLength);
IfNullMemGo(pTrashBytes);
long lDataRead = 0;
hr = pSettings->ReadSettingBytes(c_szRandomTrashLength, pTrashBytes, &lDataRead, lTrashLength);
IfFailGo(hr);
if (lDataRead != lTrashLength)
{
hr = E_UNEXPECTED;
goto Error;
}
}
//Note: before returning these settings should immediately be applied to your personal
// settings store, whether in the registry or the file system.
//This write-through cache methodology is essential to allow us to work in multi-instance IDE scenarios.
hr = UpdateState_CommandBar(bstrFirstSettingName,lTrashLength,pTrashBytes,lDataRead);
Error:
return hr;
};
Zobacz też
ImportSettings
IVsSettingsWriter
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Obsługa ustawień użytkownika
Porady: umożliwia importowanie ustawień zestawy międzyoperacyjne
Importowanie ustawień
Working with Settings
Powrót do początku