.NET compact framework - куда помещать файлы, чтобы они были доступны для эмулятора - PullRequest
5 голосов
/ 07 июня 2010

У меня есть проект .NET CF. В каталоге проекта я поместил простой XML-файл ( users.xml ), который должен быть прочитан устройством. Когда я отлаживаю приложение в эмуляторе устройства и пытаюсь загрузить файл из кода, возникает исключение (FileNotFoundException "Could not find file '\\users.xml'.").

Существует ли механизм автоматического развертывания также файлов конфигурации на эмуляторе устройства?

Ответы [ 4 ]

2 голосов
/ 07 июня 2010

Вот как это сделать в VS2005. Развертывает файл вместе с проектом.
Это для нативного приложения - оно должно быть аналогичным для управляемого.

Поле

Content указывает, следует ли развертывать файл в целевой папке. Файл развертывается в том же каталоге, что и приложение. Я не уверен, как VS2005 управляет развертыванием в случае, если вы обновили файл, то есть вам может потребоваться удалить его вручную на устройстве.

VS2005 http://www.freeimagehosting.net/uploads/255e2922df.jpg

2 голосов
/ 07 июня 2010

В вашем коде указан неверный путь. Следуя инструкциям Shaihi или Sphynx, чтобы получить Studio для развертывания файла, файл находится в папке с приложением.

На основании того факта, что вы получаете ошибку, которую он не может найти, "\ users.xml" говорит мне, что вы либо указываете ему специально искать в корневой папке, либо вы не указали папку.

Windows CE требует, чтобы вы указали полный путь, поэтому ваше приложение должно либо использовать полный путь, к которому оно развернуто (т. Е. «\ Program Files \ MyApp \ users.xml»), либо вам необходимо создать путь:

Path.Combine(
  Path.GetDirectoryName(
   Assembly.GetExecutingAssembly().GetName().CodeBase
  ), "users.xml");
0 голосов
/ 10 декабря 2011

Перейдите на File->Configuration на эмуляторе и поделитесь каталогом с ПК. Этот каталог становится вашей картой памяти, поэтому, если вы положите туда файл, например test.csv, вы сможете прочитать его из «Карты памяти \ test.csv» в программе. (Я использую VS2008 и Windows Mobile 5.0 Pocket PC RC 2 эмулятор.

0 голосов
/ 07 июня 2010

Вы можете попробовать добавить файл в приложение, установить «Build Action» для содержимого и включить «Copy to Output Directory». Кроме того, я считаю, что в настройках эмулятора есть опция, позволяющая обмениваться файлами между эмулятором и операционной системой хоста.

...