Aracılığıyla paylaş


IVsSettingsReader Arabirimi

 

Depolanan yapılandırma bilgilerini okuma erişimi sağlar Visual Studio ayarları dosyası.

Ad alanı:   Microsoft.VisualStudio.Shell.Interop
Derleme:  Microsoft.VisualStudio.Shell.Interop.8.0 (Microsoft.VisualStudio.Shell.Interop.8.0.dll içinde)

Sözdizimi

[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

Yöntemler

Adı Açıklama
System_CAPS_pubmethod ReadCategoryVersion(Int32, Int32, Int32, Int32)

Depolanmış bir kategori sürüm nesnenin değerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadFileVersion(Int32, Int32, Int32, Int32)

Depolanan dosya sürümü nesnenin değerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadSettingAttribute(String, String, String)

Depolanmış bir nesne değerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadSettingBoolean(String, Int32)

Depolanmış bir Boole nesnesinin değeri döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadSettingBytes(String, Byte, Int32, Int32)

Depolanan bir dizi değerlerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadSettingLong(String, Int32)

Depolanan uzun bir nesnenin değerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadSettingString(String, String)

Depolanmış bir dize nesnesi değerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadSettingXml(String, Object)

İçinde depolanan bir XML nesne değerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReadSettingXmlAsString(String, String)

Depolanmış bir dize nesnesi gibi bir XML ayarın değerini döndürür Visual Studio ayarları dosyası.

System_CAPS_pubmethod ReportError(String, UInt32)

Okuma işlemi ayarlar dosyası hata durumunu raporlar.

Açıklamalar

Bu arabirim, ortamı tarafından uygulanır.

Arayanlar için Notlar

Çağrı IVsSettingsReader VSPackage'nın yapılandırma bilgisini depolanan olduğunda arabirim Visual Studio ayarları dosyası.

Uygulayanlar için Notlar

Destek için kayıtlı VSPackages Visual Studio mekanizması yaptığınız ayarları kullanımını IVsSettingsReader arabirimi. Destekleyen bir VSPackage kaydetme hakkında daha fazla bilgi için Visual Studio ayarları mekanizması bkz kullanıcı ayarları için destek.

Zaman ayarları içeri aktarma işlemi seçildi gelen içeri/dışarı aktarma ayarları IDE'nin üzerinde kullanılabilir özellik Araçları menüsünde ortamı geçirir bir IVsSettingsReader içinde yapılandırma verilerini okumaya arabirimi kullanan bir VSPackage'nın Ayarları Alma yöntemine arabirimi.Visual Studio SDK Birkaç alma yöntemi destekler:

  • Birlikte çalışma derlemesi VSPackages tabanlı için alma yöntemini VSPackage'nın uygulamasıdır IVsUserSettings arabirimin ImportSettings yöntemi.

  • Çoğu paket çerçevesi ile yönetilen VSPackages tabanlı için alma yöntemini VSPackage'nın uygulamasıdır IProfileManager arabirimin LoadSettingsFromXml yöntemi.

  • VSPackages uygulama paketi çerçevesi ile yönetilen tabanlı için DialogPage alma yöntemini arabirimdir o arabirimin LoadSettingsFromXml yöntemi.

Ayarları alma daha fazla bilgi için bkz: nasıl yapılır: alma ayarlarını kullan birlikte çalışma derlemeleri veya içeri aktarma ayarları.

Örnekler

Aşağıdaki örnekte, uygulamasıdır ImportSettings, üç ayar değerlerini okur. Bu yöntem bazı alınan değerleri başka bir değer almak nasıl belirlemek için kullanır: Giriş arabellek boyutunu pTrashBytes değerini alarak belirlenir lTrashLength daha önce alınır.

[!NOT]

Arabellekler veya dize depolarken en iyi boyutu depolanan arabellek veya dize yanı sıra nesnesi ile kaydetmek için uygulamadır. Bu boyut bilgileri her zaman dizesinin kaydedilmiş arabellek alınırken arabellek taşmaları önlemek için kullanılmalıdır.

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

Ayrıca bkz.

ImportSettings
IVsSettingsWriter
Microsoft.VisualStudio.Shell.Interop Ad alanı
Kullanıcı ayarları için destek
Nasıl yapılır: birlikte çalışma derlemelerini ayarları içeri aktarmak için kullanın
Ayarları içeri aktarma
Working with Settings

Başa dön