网站大量收购闲置独家精品文档,联系QQ:2885784924

WinCE重置网络的方法.pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WinCE重置网络的方法

成都英创信息技术有限公司 WinCE 重置网络的方法 WinCE 重置网络的方法 在实际应用中,复杂的网络状况可能让设备网络产生异常(比如 IP 冲突),从而无法正常网络通信。 通过重启设备可以恢复网络,本文介绍另外一个方法,在应用层不断电的情况下快速重置网络,恢复网 络通信。 手动重置网络 进入板子控制面板-网络和拨号连接,可以看到板子现有网口的网络连接图标,下图以 EM9287 为 例,EM9287 有两个网口,分别为 ENET1 和 ENET2。 右键点击需要重置的网口图标,先选择禁用,可以看到图标显示 X ,同时板子网络灯停止闪烁。 再次右键点击该图标,选择启用,图标恢复连接显示,可以观察到板子网络灯重新亮起。 1 / 7 成都英创信息技术有限公司 WinCE 重置网络的方法 代码重置网络 引用 pw.h 头文件,添加定义板子 DEVICEIOCONTROL 的相关宏定义。 #define DD_NDIS_DEVICE_NAME TEXT(NDS0:) #define NDISPWR_DEVICE_NAME TEXT(NPW1:) #define _NDIS_CONTROL_CODE(request,method) \ CTL_CODE(FILE_DEVICE_PHYSICAL_NETCARD, request, method, FILE_ANY_ACCESS) #define WINCE_IOCTL_START 8 #define IOCTL_NDIS_BIND_ADAPTER _NDIS_CONTROL_CODE( WINCE_IOCTL_START+4, METHOD_OUT_DIRECT ) #define IOCTL_NDIS_UNBIND_ADAPTER _NDIS_CONTROL_CODE( WINCE_IOCTL_START+5, METHOD_OUT_DIRECT ) #define IOCTL_NDIS_GET_ADAPTER_BINDINGS _NDIS_CONTROL_CODE( WINCE_IOCTL_START+8, METHOD_OUT_DIRECT ) #define FSCTL_NDISPWR_BASE FILE_DEVICE_NETWORK #define _NDISPWR_CTL_CODE(_Function, _Method, _Access) \ CTL_CODE(FSCTL_NDISPWR_BASE, _Function, _Method, _Access) #define IOCTL_NPW_SAVE_POWER_STATE \ _NDISPWR_CTL_CODE(0x200, METHOD_BUFFERED, FILE_ANY_ACCESS) 首先调用电源管理设备 NPW ,通知它关闭网口电源(这里以ENET1 为例) 2 / 7 成都英创信息技术有限公司 WinCE 重置网络的方法 hNdisPwr = CreateFile(NDISPWR_DEVICE_NAME, 0, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED, INVALID_HANDLE_VALUE); SavePowerState.CePowerState = D4; SavePowerState.pwcAdapterName = L”ENET1”; bRet = DeviceIoControl( hNdisPwr, IOCTL_NPW_SAVE_POWE

文档评论(0)

ldj215322 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档