女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

英創信息技術WinCE重置網絡的方法

英創信息技術 ? 來源:英創信息技術 ? 作者:英創信息技術 ? 2020-02-04 11:37 ? 次閱讀

在實際應用中,復雜的網絡狀況可能讓設備網絡產生異常(比如IP沖突),從而無法正常網絡通信。通過重啟設備可以恢復網絡,本文介紹另外一個方法,在應用層不斷電的情況下快速重置網絡,恢復網絡通信

手動重置網絡

進入板子控制面板->網絡和撥號連接,可以看到板子現有網口的網絡連接圖標,下圖以EM9287為例,EM9287有兩個網口,分別為ENET1和ENET2。

右鍵點擊需要重置的網口圖標,先選擇禁用,可以看到圖標顯示X,同時板子網絡燈停止閃爍。

再次右鍵點擊該圖標,選擇啟用,圖標恢復連接顯示,可以觀察到板子網絡燈重新亮起。

代碼重置網絡

引用pw.h頭文件,添加定義板子DEVICEIOCONTROL的相關宏定義。

#defineDD_NDIS_DEVICE_NAME TEXT("NDS0:")

#defineNDISPWR_DEVICE_NAME TEXT("NPW1:")

#define_NDIS_CONTROL_CODE(request,method) \

CTL_CODE(FILE_DEVICE_PHYSICAL_NETCARD, request, method, FILE_ANY_ACCESS)

#defineWINCE_IOCTL_START 8

#defineIOCTL_NDIS_BIND_ADAPTER _NDIS_CONTROL_CODE( WINCE_IOCTL_START+4, METHOD_OUT_DIRECT )

#defineIOCTL_NDIS_UNBIND_ADAPTER _NDIS_CONTROL_CODE( WINCE_IOCTL_START+5, METHOD_OUT_DIRECT )

#defineIOCTL_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)

#defineIOCTL_NPW_SAVE_POWER_STATE \

_NDISPWR_CTL_CODE(0x200, METHOD_BUFFERED, FILE_ANY_ACCESS)

首先調用電源管理設備NPW,通知它關閉網口電源(這里以ENET1為例)

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_POWER_STATE,

&SavePowerState,

sizeof(NDISPWR_SAVEPOWERSTATE),

NULL,

0x00,

NULL,

NULL);

CloseHandle(hNdisPwr);

如果網口有自己的電源管理,那么那么還應該調用以下代碼。還是以ENET1為例,這里的字符串一定得是{98C5250D-C29A-4985-AE5F-AFE5367E5006}\ENET1這樣的,并且需要兩個\0結尾!

TCHAR szName[MAX_PATH]=L”ENET1”;

int nChars;

nChars = _sntprintf(

szName,

MAX_PATH-1,

_T("%s\\%s"),

PMCLASS_NDIS_MINIPORT,

wcName);

szName[MAX_PATH-1]=0;

DWORD dwRet;

dwRet = SetDevicePower(szName, POWER_NAME, D4);

通知系統UNBIND網口

BOOL DoNdisIOControl(DWORD dwCommand, LPVOID pInBuffer,

DWORD cbInBuffer, LPVOID pOutBuffer,

DWORD * pcbOutBuffer)

{

HANDLE hNdis;

BOOL fResult = FALSE;

hNdis = ::CreateFile(DD_NDIS_DEVICE_NAME, GENERIC_READ | GENERIC_WRITE,

FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_ALWAYS,

0, NULL);

if(INVALID_HANDLE_VALUE != hNdis)

{

fResult = DeviceIoControl(hNdis, dwCommand, pInBuffer, cbInBuffer,

pOutBuffer, (pcbOutBuffer ? *pcbOutBuffer : 0),

pcbOutBuffer, NULL);

CloseHandle(hNdis);

}

returnfResult;

}

bRet = DoNdisIOControl(

IOCTL_NDIS_UNBIND_ADAPTER,

wcName,

(_tcslen(wcName)+2) *sizeof(TCHAR),

NULL,

NULL);

查詢網絡,確認一下禁用網絡是否成功

bRet = DoNdisIOControl(

IOCTL_NDIS_GET_ADAPTER_BINDINGS,

wcName,

(_tcslen(wcName)+1) *sizeof(TCHAR),

multiSz,

&cbBuffer);

return(multiSz[0] != L'\0');

讓板子網口重新上電,這里上電不能直接使用D0,只能使用默認值PwrDeviceUnspecified

hNdisPwr = CreateFile(NDISPWR_DEVICE_NAME, 0, 0, NULL, OPEN_EXISTING,

FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED, INVALID_HANDLE_VALUE);

SavePowerState.CePowerState = PwrDeviceUnspecified;

SavePowerState.pwcAdapterName = L”ENET1”;

bRet = DeviceIoControl(

hNdisPwr,

IOCTL_NPW_SAVE_POWER_STATE,

&SavePowerState,

sizeof(NDISPWR_SAVEPOWERSTATE),

NULL,

0x00,

NULL,

NULL);

CloseHandle(hNdisPwr);

TCHAR szName[MAX_PATH]=L”ENET1”;

int nChars;

nChars = _sntprintf(

szName,

MAX_PATH-1,

_T("%s\\%s"),

PMCLASS_NDIS_MINIPORT,

wcName);

szName[MAX_PATH-1]=0;

DWORD dwRet;

dwRet = SetDevicePower(szName, POWER_NAME, PwrDeviceUnspecified);

通知系統BIND網口

bRet = DoNdisIOControl(

IOCTL_NDIS_BIND_ADAPTER,

wcName,

(_tcslen(wcName)+2) *sizeof(TCHAR),

NULL,

NULL);

查詢網絡,確認一下網絡啟動是否成功

bRet = DoNdisIOControl(

IOCTL_NDIS_GET_ADAPTER_BINDINGS,

wcName,

(_tcslen(wcName)+1) *sizeof(TCHAR),

multiSz,

&cbBuffer);

return(multiSz[0] != L'\0');

例程里已經將以上代碼封裝到enet.h,使用以下代碼可以簡單重置網絡

#include"enet.h"

Void ResetENET()

{

EnableENET(FALSE);

EnableENET(TRUE);

}

在重置網絡前,建議先關閉該網口現有的socket連接

整個重置過程是通過電源管理將網口斷電,然后通知系統將網絡UNBIND。然后重新給網口上電,再通知系統將網絡BIND。通過網絡燈可以看到,硬件PHY是有復位的,即網絡在硬件層進行了復位。文中提到的例程,可以通過聯系英創工程師獲得。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6097

    瀏覽量

    36141
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    2025第二屆教育信息技術應用創新大賽啟動,誠邁科技邀您挑戰!

    NEWS為進一步落實建設網絡強國和教育強國的戰略部署,推動各級教育行政部門及高校信息技術應用創新能力提升,培養實戰型創新人才。誠邁科技聯合龍芯中科、太初元碁在2025第二屆教育信息技術應用創新大賽
    的頭像 發表于 05-13 17:24 ?370次閱讀
    2025第二屆教育<b class='flag-5'>信息技術</b>應用創新大賽啟動,誠邁科技邀您挑戰!

    2025第二屆教育信息技術應用創新大賽正式開賽

    為進一步落實建設網絡強國和教育強國的戰略部署,推動各級教育行政部門及高校信息技術應用創新能力提升,培養實戰型創新人才。龍芯中科聯合太初元碁、誠邁科技在2025第二屆教育信息技術應用創新大賽共同發布
    的頭像 發表于 05-13 16:21 ?343次閱讀

    浪潮下,國產主板有什么新的發展機遇?

    信息技術應用創新浪潮的推動下,國產主板迎來了諸多新的發展機遇。信產業旨在實現信息技術領域的自主可控,這一戰略目標為國產主板的發展提供了廣闊的空間。信浪潮下國產主板的發展機遇多元且
    的頭像 發表于 05-09 09:24 ?134次閱讀
    信<b class='flag-5'>創</b>浪潮下,國產主板有什么新的發展機遇?

    龍芯中科榮獲2024年度信息技術應用創新工作委員會卓越貢獻成員單位

    近日,中國電子工業標準化技術協會信息技術應用創新工作委員會(以下簡稱“信工委會”)在北京召開2024年度工作總結座談會暨信“大比武”總結大會。中國工程院院士、信
    的頭像 發表于 01-23 10:50 ?576次閱讀

    芯盛智能榮獲2024年信息技術應用創新工作委員會卓越貢獻成員單位

    日前,中國電子工業標準化技術協會信息技術應用創新工作委員會(以下簡稱 “信工委會”)2024 年度總結座談會于北京隆重舉行。此次會議對在信工作中作出突出貢獻的成員單位予以表彰。江蘇
    的頭像 發表于 01-20 09:56 ?528次閱讀

    飛騰助力首屆教育信息技術應用創新大賽圓滿落幕

    近日,由中國教育技術協會主辦,教育部教育管理信息中心教育信實驗室、公安部第三研究所、中國電子工業標準化技術協會信工委會支持,北京航空航天
    的頭像 發表于 12-24 09:57 ?462次閱讀

    有方科技參編的信息技術團體標準發布

    近日,有方科技參編的《信息技術產品供應鏈成熟度 共性指標 第1部分:企業背景評價》《信息技術產品供應鏈成熟度 共性指標 第2部分:技術掌控評價》《信息技術產品供應鏈成熟度 共性指標 第
    的頭像 發表于 12-23 10:44 ?537次閱讀

    龍芯中科助力2024首屆教育信息技術應用創新大賽成功舉辦

    近日,2024首屆教育信息技術應用創新大賽在北京航空航天大學成功舉辦。本次大賽由中國教育技術協會主辦,教育信實驗室、公安部第三研究所、中國電子工業標準化技術協會信
    的頭像 發表于 12-19 17:02 ?520次閱讀

    拓維信息參與牽頭組建!長沙新一代信息技術產教聯合體正式獲批

    的長沙新一代信息技術產教聯合體成功獲批,為長沙市信息技術產業發展注入了新的活力。圖/《2024年長沙市市級市域產教聯合體名單》長沙新一代信息技術產教聯合體將依托龍頭企
    的頭像 發表于 12-07 01:06 ?786次閱讀
    拓維<b class='flag-5'>信息</b>參與牽頭組建!長沙新一代<b class='flag-5'>信息技術</b>產教聯合體正式獲批

    中科達榮獲2024年軟件和信息技術服務優秀企業

    及前百家企業”名單。中科達憑借非凡的技術實力與持續的創新能力,成功入選“2024年度軟件和信息技術服務競爭力百強企業”以及“2024年軟件和信息技術服務優秀企業”。
    的頭像 發表于 10-30 11:44 ?853次閱讀

    國產化背景下的工控主板發展現狀

    ,是信息技術應用創新產業的簡稱,于2016年“信工委會”(信息技術應用創新工作委員會)提出,目的就是要推動我們國內軟硬件關鍵技術的研發
    的頭像 發表于 09-21 16:15 ?796次閱讀

    梯度科技入選2023年信息技術應用創新解決方案名單

    日前,工業和信息化部網絡安全產業發展中心(工業和信息化部信息中心)在天津舉辦2024信息技術應用創新發展大會暨解決方案應用推廣大會。會上正式
    的頭像 發表于 09-09 16:29 ?706次閱讀

    中軟國際信服務助力大連信產業發展

    為進一步激發大連本地信產業生態的活力與潛力,搭建一個高效、開放的交流平臺。由大連軟件行業協會攜手大連市信息技術應用創新綜合服務中心主辦,中軟國際協辦的,2024年大連市信息技術應用創新產業發展大會
    的頭像 發表于 08-27 16:49 ?1210次閱讀

    兆芯金融方案入選工信部2023年信息技術應用創新典型解決方案

    近日,由工信部網絡安全產業發展中心等主辦的2024信息技術應用創新發展大會暨解決方案應用推廣大會在天津、浙江、福建、山東四地聯動同步召開,會上公布了2023年信息技術應用創新解決方案征集遴選結果。兆
    的頭像 發表于 08-05 16:12 ?907次閱讀

    大華股份網絡攝像機獲得信息技術安全評估通用標準EAL 3+證書

    近日,大華股份網絡攝像機系列產品通過SGS Brightsight實驗室全方位評估和驗證,獲得信息技術安全評估通用標準(CC,Common Criteria)EAL 3+證書。 ? ? CC
    的頭像 發表于 07-05 17:26 ?1637次閱讀