Member 14864190 Ответов: 1

Как читать существующие XML-файлы без определения полного пути в C# WPF


How to read XML files without writing full path, so my code would work when copied to other computers. With visual studio I added 2 XML files to project (Windows Application) and don't know best way to read those files. Hope I described my problem clearly. Maybe I needed to add those txt files differentely (like directly to same folder as .exe file)?


Что я уже пробовал:

1.
XElement element = XElement.Load("WH_Num.xml");

2.
XElement element = XElement.Load(@" C:\Users\nandang\Desktop\GUI_SETUP\JUNE_15_SetUp\3\Application Files\WH_Num.xml");


Что оба кода 2 работают на моем компьютере, но когда я публикую и устанавливаю установочный файл на другом компьютере, я не буду работать.

пожалуйста, кто-нибудь посоветует мне лучший способ дать XML-путь, и этот путь может быть работой для всех других компьютеров.

Maciej Los

Вы уверены, что программа установки была установлена WH_num.xml файл на клиентской машине?

1 Ответов

Рейтинг:
2

OriginalGriff

Если вы загружаете имя файла без какой - либо информации о пути, он будет найден только в том случае, если он находится в текущем каталоге-обычно в той же папке, что и EXE-файл, но это не обязательно, так как его могут изменить несколько вещей, включая ярлык для EXE-файла в Windows, который позволяет пользователю указать папку "пуск".
А в производстве хранение данных, которые изменяются в той же папке, что и EXE-файл, - это нет-нет, поскольку он обычно защищен от записи в целях вирусной безопасности.

Что вам нужно сделать, так это хранить данные в "общей" папке, которая доступна (но отличается) на каждом компьютере. Вы можете посмотреть здесь: Где я должен хранить свои данные?[^] - он дает код для поиска данных в пользовательских папках.