Есть ли такой инструмент, как Dependency Walker, который можно запустить на мобильном устройстве с Windows CE 6.5?

Я пытаюсь перенести приложение из eMbedded Visual C++ 4.0 в Visual Studio 2008 и пытаюсь заставить его работать с Windows Embeded Handheld (6.5 Professional).

У меня все ошибки компилятора исправлены, но теперь я сталкиваюсь с ошибкой, которая появляется, когда VS2008 пытается запустить режим отладки в развернутом exe на устройстве. Я получаю сообщение об ошибке: Unable to start program '%CSIDL_PROGRAM_FILES%\APP_NAME\APP.exe'. An error occurred that usually indicates a corupt installation (code 0x8007007e). If the problem persists, repair your visual studio installation via 'Add or Remove Programs' in your Control Panel

Очевидно, это ошибка, связанная с отсутствующими файлами DLL, которых я нашел и исправил пару, но, похоже, их больше. Мне было интересно, существует ли такой инструмент, как Dependency Walker, который можно запустить на мобильном устройстве с Windows CE 6.5. Это значительно упростило бы поиск отсутствующих библиотек DLL.


person Mike    schedule 15.02.2013    source источник


Ответы (2)


если это действительно проблема с зависимостью, вы найдете ее на устройстве с запущенным PEInfo (бесплатное ПО: http://s-k-tools.com/index.html?m_util.html). Скопируйте/установите PEInfo на устройство, затем запустите его, выберите «Файл/Открыть» и откройте исполняемый файл. PEInfo проверяет импорт и загрузку указанных библиотек DLL (возможность загрузки). PEInfo действительно хороший бесплатный инструмент для анализа таких проблем с нагрузкой.

person josef    schedule 16.02.2013
comment
Спасибо, кажется, это то, что я искал, и даже больше. - person Mike; 19.02.2013

Я не знаю ни одного, но depend.exe на рабочем столе может проверять файлы устройств. Обычно он сбивается, когда сталкивается с зависимостью coredll.dll, но вы знаете, что coredll не зависит ни от чего другого, так что это не проблема.

person ctacke    schedule 15.02.2013
comment
Я пытался это сделать уже, и он не работает. Есть ли какие-либо настройки, которые я должен сделать, чтобы заставить его работать? Я попробую еще раз. редактировать: он говорит, что все dll отсутствуют, но я знаю, что по крайней мере некоторые из них есть на устройстве. - person Mike; 15.02.2013
comment
Чтобы было ясно, вы используете приложение для рабочего стола (и приложение depends.exe, и depency walker работают) на рабочем столе, и оно может проверять библиотеки DLL устройства. - person ctacke; 15.02.2013
comment
Я использую dumpbin /exports или safe-networking.org/products/filealyzer, чтобы увидеть импорт DLL или exe. Независимо от того, является ли он рабочим столом или файлом Windows Embedded Handheld 6.5.3. Вы ЗНАЕТЕ, что Windows CE 6.5 не существует! - person josef; 16.02.2013
comment
Dependency Walker не сможет заглянуть в папку Windows CE и не найдет волшебным образом что-либо еще на устройстве, а только то, что находится в папке, где находится DLL/EXE, в которой он запущен. - person Ulrich Eckhardt; 17.02.2013