私はVisual Studio拡張機能でSettingsManager
を使用してユーザー設定を保存しています。SettingsManager.GetWritableSettingsStoreはVisual Studio Extensionのインポート/エクスポートに使用できますか?
SettingsManager settingsManager = new ShellSettingsManager(ServiceProvider.GlobalProvider);
var store = settingsManager.GetWritableSettingsStore(SettingsScope.UserSettings);
カスタムWPFオプションページas described in this postがあります。私はまた、インポート/エクスポートの設定で動作するように私の拡張子を設定したいと思いますので、私はCreating an Options PageとCreating a Settings Categoryページに続く、私のパッケージにこれを追加することが属性:
[ProvideProfile(typeof(OptionsDialogPage), "Unit Test Boilerplate Generator", "Unit Test Boilerplate Generator Settings", 106, 107, true, DescriptionResourceID = 108)]
[ProvideOptionPage(typeof(OptionsDialogPage), "Unit Test Boilerplate Generator", "Templates", 101, 109, supportsAutomation: true)]
私は成功し、それはのように見えるようになりましたインポート/エクスポート設定の見出しが表示されますが、エクスポート後にSettingsManager
で保存されたデータは表示されません。 ProvideProfile
とProvideOptionPage
のオプションを探していて、設定しようとしましたがSupportsProfiles = true
でしたが、それは役に立ちませんでした。
どのようにこれらの2つのシステムを接続しますか?
(編集)私は(CollectionPath UnitTestBoilerplateGenerator)プロセスモニタを実行し、ここではSettingsManagerキーを見つけました:
\REGISTRY\A\{08894cfc-f3a9-f49b-133e-3453dfe7a27d}\Software\Microsoft\VisualStudio\15.0_a703f143Exp\UnitTestBoilerplateGenerator\Template_VisualStudio_Moq_File
そして、ここで(別の内線からの例)に保存されたビルトインオプション:
\REGISTRY\A\{22e40365-b8e3-e9b2-1315-55021a1e4c3d}\Software\Microsoft\VisualStudio\15.0_a703f143\ApplicationPrivateSettings\Xavalon\XamlStyler\Core\Options\StylerOptions\NoNewLineElement
別々の場所に保管されているようです。これらの組み込みオプションにプログラムで記述したり、インポート/エクスポートにカスタムCollectionPathを含める方法はありますか?
あなたはExternalSettingsManager(https://msdn.microsoft.com/en-us/library/microsoft.visualstudio.settings.externalsettingsmanager.aspx)を試してみましたか?このクラスを使用すると、さまざまなスコープでプロパティとコレクションを検索できます。これには、スコープ内のプロパティとコレクションをさらに操作するための、SettingsStoreクラスとWritableSettingsStoreクラスへの参照が含まれています。 –
@ Wendy-MSFT別のアプリケーションシェルを使用している場合は、このように見えます。インポート/エクスポートでバックアップされた設定にアクセスするにはどのような方法がありますか? – RandomEngy
GetReadOnlySettingsStore読み取り専用操作のために使用され、GetWritableSettingsStoreは読み出し動作と書き込み動作のために使用することができる要求されたスコープのWritableSettingsStoreクラスを提供することができる要求されたスコープのSettingsStoreクラスを提供します。これらの方法の両方を使用して、すべての読み取り専用設定と書き込み可能設定を取得できます。 –