Windows Embedded Standard 7 не найдет мою.dll
Несколько недель назад я собрал Native C++ .dll, который оборачивает сторонний.dll для использования с C# P/Invoke в нескольких приложениях, которые будут развернуты в WES7. Я использую Windows 10 в качестве устройства разработки, и все работает как положено. На этой неделе я наконец-то взял в руки коробку со встроенной Windows, и теперь дела идут не так хорошо... Я попытался развернуть три разных приложения на C#, использующих.dll, который я создал вместе со сторонним, но все они Ошибка с DllNotFoundException. Очевидно, что оба DLL-файла находятся в той же папке, что и мой исполняемый файл для каждого проекта, но я продолжаю получать исключение DllNotFoundException. Мой родной.dll ориентирован на платформу Win32, встроенные окна - это 32-битная система, и все мои приложения на C# созданы для архитектуры x86, поэтому я исключил это. Я потратил последний час, возиться с папкой system32, но безрезультатно. Любые предложения будут оценены.
Редактировать: я только что говорил с коллегой, который работает удаленно, и у него была точно такая же проблема при попытке запустить наш.dll под WES7. Я обновлю этот вопрос, как только у меня будет больше информации.
1 ответ
В конце концов, я оказался достаточно глуп, чтобы развернуть версию DEBUG на целевом компьютере, на котором не было msvcp100d.dll и msvcr100d.dll. Я использовал Dependency Walker, чтобы выяснить это (по-видимому, мне было слишком сложно взглянуть на выпадающий список свойств проекта) и развернул релизную версию в цели. Это, наконец, сработало, но у меня была другая проблема, которая приводит к другому вопросу...