У меня есть программа, которая создает файл .hmq, в котором хранится JSON. Когда приложение запускается в первый раз, оно предлагает пользователю выбрать место для сохранения файлов, но когда файл открывается, моя программа запроситпуть сохранения снова.
Я записываю путь сохранения в файл и проверяю, существует ли он, если он это сделает, он не будет запрашивать у пользователя путь сохранения, насколько я могу судить, так как работающийкаталог изменен, файл открыт.
Я собирался попытаться изменить текущий каталог, но посмотреть на этот я не смогу, потому что моя программа хранится в файлах программы.каталог, который требует прав администратора.Я добавил проверку, чтобы увидеть, было ли приложение открыто с файлом, но при сохранении файла происходит сбой, поскольку каталог сохранения хранится в файлах программы и не может найти его в локальном рабочем каталоге
public MainWindow()
{
InitializeComponent();
string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
if (!cl.ViewingData.HasPath) // L
{
if (!File.Exists("BaseDirFile.txt"))
{
MessageBox.Show("To load a saved file sheet just open it with this program, or navigate to it from the bottom of the setup page", "ReadMe");
MessageBox.Show("Now set where to save the setup sheets", "ReadMe");
CommonOpenFileDialog dialog = new CommonOpenFileDialog();
dialog.InitialDirectory = "C:\\Users\\" + userName + "\\Documents";
dialog.IsFolderPicker = true;
dialog.Title = "Pick the directory to store the saved data sheets";
if (dialog.ShowDialog() == CommonFileDialogResult.Ok)
{
File.Create("BaseDirFile.txt").Close();
using (StreamWriter sw = new StreamWriter("BaseDirFile.txt"))
{
sw.WriteLine(dialog.FileName);
}
}
else
{
Close();
}
}
}
frame1.Navigate(new Pages.Setup_Pages.SetupPage.SetupPage());
}
}
public partial class App
{
void Application_Start(object sender, StartupEventArgs e)
{
if (e.Args.Length > 0)
{
cl.ViewingData.HasPath = true;
cl.ViewingData.Path = e.Args[0];
}
}
}`
Как мне сохранить текущий каталог