まず、設定データを保存する場合、次の 2 つのオプションがあります。
Windows.Storage.ApplicationDataContainer roamingSettings = Windows.Storage.ApplicationData.Current.RoamingSettings;
ローミング プロファイル スペースを使用するため、クラウドまたはドメイン プロファイルに保存されます。
Windows.Storage.ApplicationDataContainer settings = Windows.Storage.ApplicationData.Current.LocalSettings;
ローカル プロファイル スペースを使用するもの
もちろん、それらは両方ともユーザー %appdata% の下に最終的に保存されますが、すべてを正しく理解していれば、ローミングのものは実際に同期されます:)
したがって、別のパーティションに保存したいアプリケーション データについては、次のようになります。
まず、FolderPicker を使用して場所を選択する必要があります
var folderPicker = new Windows.Storage.Pickers.FolderPicker();
//Add some other yada yada to make the picker work as needed
StorageFolder folder = await folderPicker.PickSingleFolderAsync();
次に、選択したフォルダーをアクセスリストに入れ、このフォルダーの使用が許可されていることを覚えておく必要があります
StorageApplicationPermissions.FutureAccessList.AddOrReplace("PickedFolderToken", folder);
そうすれば、アプリケーション/システムは、将来このフォルダーの使用が許可されていることを追跡します。選択したフォルダーは、アクセスできるファイル システム内の任意の場所である可能性があります。
最後に、次にアプリを起動したときに選択したフォルダーを元に戻したくない場合は、単に逆の操作を行います。
StorageFolder folder = await StorageApplicationPermissions.FutureAccessList.GetFolderAsync("TargetFolderToken",AccessCacheOptions.FastLocationsOnly);
値 FastLocationsOnly は、ローカル ドライブのみを返すことを意味します。「TargetFolderToken」は、フォルダを FutureAccessList に格納したときに使用した識別子と同じです。