Код: Выделить всё
using System.Diagnostics; //VS22 automatically added this reference during one of my attempts to make this work but I can't remember which it was used for, might not be necessary
class Program
{
static string gameAddress = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) + @"\AppData\LocalLow\Owlcat Games"; //... more specific environment locations, just an example
static string Locale = "";
void Main()
{
Console.WriteLine("check 1")
FileFetch();
Console.WriteLine("check 2")
}
public static async void FileFetch() //async for the future; checking available files during startup
{
try
{
string[] files = Directory.GetDirectories(gameAddress, "", SearchOption.AllDirectories);
foreach (string file in files)
{
Console.WriteLine(file);
Locale = file; //just grabbing something to see if I can edit it
}
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
}
}
Изменить: Как отметил Фрокс, ошибка может быть вызвана тем, что Filestream пытается прочитать папку вместо реального файла; Я переключил свой код на использование Directory.GetDirectories(); чтобы достичь того, что я изначально пытался протестировать с помощью StreamReader, но мне все еще выдается исключение UnauthorizedAccessException при попытке манипулировать или даже создавать определенные файлы, поэтому разрешение разрешений все равно будет оценено. Протестировал Directory.CreateDirectory() на нескольких уровнях на моем рабочем столе, проблем не возникло, но создание внутри определенных папок, созданных Steam, и даже C:\Program Files\ вызывает ошибку.
Подробнее здесь: https://stackoverflow.com/questions/798 ... ata-folder
Мобильная версия