Windows — Intel Galileo и C ++ REST SDK

Я успешно установил свою плату Intel Galileo (Gen 2) с последним образом Windows IoT (2/12/2014). Я могу загрузить образ без каких-либо проблем, подключиться к нему и запустить приложение «моргание».

Я попытался запустить образец «Касабланка» и следовал инструкциям http://ms-iot.github.io/content/Casablanca.htm. Когда я подключаюсь к плате Galileo и пытаюсь запустить консольное приложение, я ничего не получаю. При попытке отладки из Visual Studio я вижу следующий вывод:

Исключение первого шанса в 0x77CC342A (ntdll.dll) в WindowsIoTDemo.exe: 0xC0000139: точка входа не найдена.
Программа «[2016] WindowsIoTDemo.exe» завершила работу с кодом -1073741511 (0xc0000139) «Точка входа не найдена».

Кто-нибудь смог запустить пример приложения Casablanca или использовать C ++ REST SDK в проекте «Windows for IoT» вообще?

2

Решение

У меня была такая же проблема при использовании последней версии Касабланки, 2.3. Для запуска образца я использовал Casablanca 2.2:

  1. Поскольку, похоже, нет способа загрузить исходный код 2.3 из Codeplex, единственный способ, которым я мог видеть, — это использовать Git:

    мерзкий клон https://git01.codeplex.com/casablanca

    git checkout 9cc7758d714b

  2. На этом этапе вы можете следовать инструкциям в образце Galileo, чтобы создать cpprest120d_2_2.dll и скопировать его в Galileo. Обязательно установите параметр «Нет расширенных инструкций».

  3. Создайте новый проект для образца в соответствии с указаниями, но не используйте NuGet для установки cpprestsdk. Это установит версию 2.3. Вместо этого вы хотите включить версию 2.2, которую вы создали ранее …

  4. Добавьте проект casablanca120.vcxproj из папки Git в свое решение

  5. В вашем примере проекта добавьте ссылку на проект DLL Casablanca: Свойства проекта -> Общие свойства -> Ссылки

  6. Добавьте папку заголовка Casablanca 2.2 в ваш пример проекта: Свойства проекта -> Свойства конфигурации -> C / C ++ -> Общие. Установите в поле «Дополнительные каталоги включения» значение ваш-Casablanca-папка\ Release \ включить.

Вот и все — строить и запускать.

0

Другие решения

Ошибка точки входа не означает, что существует зависимая библиотека DLL, в которой отсутствует какой-либо метод. Чтобы включить дополнительные диагностические данные, вы можете изменить раздел реестра GlobalFlag = 2 в HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager. В моем случае в следующих методах отсутствует UnregisterClassW. Этот метод определен в User32.dll, и если вы сравните User32.dll на вашей рабочей станции Windows с той, что в Galileo, вы увидите, что эти файлы сильно отличаются.

Вы можете узнать в моем блоге, как я исправил проблему http://kardum.net/iot/intel-galileo-windows-application-azure-storage/

0

По вопросам рекламы [email protected]