У меня подобные вопросы по этой ссылке No Internet on the device via codeHttpWebRequest бросает ConnectFailure на реальном устройстве, а не на эмуляторе для Windows, Handheld 6,5
Я работаю на устройстве Intermec ИНК Ci70, который работает на Windows, Handheld Embedded 6.5. Это устройство имеет адаптер 802.11abgn Wireless LAN.
На эмуляторах устройств, работающих под управлением Windows Mobile 6.5.3, HttpWebRequests отлично справляется, но НЕ на устройстве. Я всегда получаю WebException с кодом состояния ConnectFailure на устройстве.
Я попытался отлаживать дальше в Родные коды класса ConnMgr и выяснил, что ConnMgrMapURL не может сопоставить URL-адрес с любой сетью Dest Guid, он всегда возвращает 00000000-0000-0000-0000-000000000000. Дальнейшая отладка показывает мне, что ошибка, вызванная исключением ConnectFailure, находится в методе CreateConnectionForURL в файле mscoree.dll. К сожалению, я не могу отладить этот файл из-за ограничений устройства.
Я также попробовал класс OpenNETCF ConnectionManager для подключения. Статус подключен, но, смотря на коды этого класса, ребята из OpenNETCF делали в коде методы hardguode Internet Guid id. Но HttpWebRequest все еще не получает ответа.
Я также отключил все ценные бумаги, а также установил сертификаты разработки SDK на устройстве.
Я также попытался позволить устройству использовать DMA через ActiveSync для подключения к Интернету и отключить WiFi в качестве еще одного теста.
Я также попытался целевой .NET CF-версии 1, 2, 3.5 (3.5.9xxx) и 3.5 (3.5.7xxx)
Ни одна из вещей, которые я попробовал работу. Но встроенный просмотр и браузер Intermec HTML5 (стороннее приложение) могут подключаться к Интернету и локальным адресам.
К сожалению, у меня нет другого устройства для сравнения. Пожалуйста помоги мне с этим.
Спасибо, Йозеф, я попробовал ваше предложение. Я установил оба подключения (Интернет и частный) в «Моя рабочая сеть» и установил, что эта сеть подключается к Интернету без какого-либо прокси-сервера и также устанавливает сетевую карту для работы, но она по-прежнему не работает. Кроме того, URL-адреса, которые я тестировал, были с точечной схемой (http://www.google.com, http://192.168.1.2:80/) и без точечной схемы (http: // duyle-pc /) , –
Я пробовал методы P/Invoke ConnMgr, такие как ConnMgrMapUrl (всегда возвращать 00000-000000 на устройство, тогда как на эмуляторе он возвращает правильный Guid для данного Uri). Метод ConnMgrEstablishConnectionSync предоставляет статус «Подключен» для любых URL-адресов (google или local) и для обоих руководств по Интернету и руководству по работе. Поэтому я предполагаю, что соединение может быть установлено). Также метод CreateConnectionForURL на самом деле результат yilds -2147483648 = 0x80000000 Hresult. На самом деле, код пробежал прокси-сервер и пункты обслуживания, прежде чем он встречает ошибку где-нибудь без каких-либо доказательств. –
Вы пробовали ИДЕННЫЙ URL-адрес в Internet Explorer на устройстве? Почему вы беспокоитесь о диспетчере соединений? Обычно он работает без необходимости управлять или контролировать его. Возможно, вы также можете добавить строки кода, которые вы используете для httpWebrequest. Для дальнейшего анализа используйте такие инструменты, как vxUtils и MS Network Analyzer. – josef