Я честно занимался этим часами, и я до сих пор не нашел ничего близкого к тому, что я ищу.C# Как использовать папку в проекте
В основном я создал папку в своем проекте и назвал ее «Файлы». Затем я добавил много фактических файлов в эту папку, и теперь я хочу получить к ним доступ через пустоту, но я не могу получить их имена.
Я попытался отобразить файлы в окне сообщения (только для целей тестирования), так что я использовал это:
public static string[] GetResourceNames()
{
var asm = Assembly.GetEntryAssembly();
string resName = asm.GetName().Name + ".Files";
using (var stream = asm.GetManifestResourceStream(resName))
using (var reader = new System.Resources.ResourceReader(stream))
{
return reader.Cast<DictionaryEntry>().Select(entry => (string)entry.Key).ToArray();
}
}
Но все это делает возвращает ошибку говоря, читатель не может быть ноль.
Я пытаюсь показать в цикле Еогеасп как это:
foreach (string resourceName in GetResourceNames())
{
MessageBox.Show(resourceName);
}
но ничего не показывает.
То, что я пытаюсь сделать это:
Assembly assembly = Assembly.GetExecutingAssembly();
int totalFiles = 17;
int currentFiles = 0;
foreach (var file in assembly.GetManifestResourceNames())
{
string extractPath = functions.pathToExtract + @"\" + file;
using (Stream s = assembly.GetManifestResourceStream(file))
using (BinaryReader r = new BinaryReader(s))
using (FileStream fs = new FileStream(extractPath, FileMode.OpenOrCreate))
using (BinaryWriter w = new BinaryWriter(fs))
w.Write(r.ReadBytes((int)s.Length));
currentFile.Invoke((MethodInvoker)delegate { currentFile.Text = "Installing : " + file + " (" + currentFiles + " out of "+ totalFiles + " installed)"; });
currentFiles += 1;
}
Это то, что я пытаюсь сделать, и это код успешно, но он записывает имена файлов: SolutionName.Files. FileName.Extension, и я только хочу, чтобы он записывался как FileName.Extension
Что я здесь делаю неправильно?
@Shaamaan Да, файлы зарегистрированы в решении, и нет, они не находятся в окне ресурсов, я просто перетащил их в папку «Файлы» и поменял их действие «Построение» на «Встроенный ресурс», – Ghawn