一、檢測window中存在的串列埠
一台電腦至多存在255個串列埠,依次檢查串列埠是否存在,如果能開啟某乙個串列埠,或開啟串列埠不成功但返回的是error_access_denied錯誤資訊都認為存在存在只是後者表明串列埠已經被占用
核心**:
handle hport = ::createfile(sport,generic_read | generic_write, 0, 0, open_existing, 0, 0);
if(hport == invalid_handle_value)
dworddwerror = getlasterror();
if(dwerror == error_access_denied)
//表明串列埠已經占用
else
//串列埠存在
closehandle(hport);
二、串列埠熱拔插時檢測串列埠
利用cwnd的on_wm_devicechange訊息來處理(vs2010手動新增)
1在訊息對映begin_message_map(ctbox_debug_viewdlg,cdialogex)中新增:on_wm_devicechange()
2在標頭檔案類的定義中新增函式宣告:afx_msgbool ondevicechange(uint neventtype, dword dwdata);
3實現函式
#include
boolctbox_debug_viewdlg::ondevicechange(uint neventtype,dword dwdata)
//dev_broadcast_deviceinte***ce* dbd = (dev_broadcast_deviceinte***ce*)dwdata;
switch (neventtype)
case dbt_deviceremovecomplete://移除裝置
case dbt_devicearrival://新增裝置
refreshcom();//重新整理組合框的內容
break;
default:
break;
return true;
其中voidctbox_debug_viewdlg::refreshcom(void)
int count =m_combolport.getcount();
for(int i=0;im_combolport.deletestring(count -1 -i);
addcom();
m_combolport.setcursel(0);
Python中檢測模組是否存在
try import websocket except importerror print 正在安裝websocket client py3擴充套件 res os.system pip3 install websocket client py3 nul if res 0 print websocke...
怎樣檢測鍊錶中存在迴圈?
這應該是乙個比較老的題目,在一次面試的過程中碰到過該題目,並沒有能夠給出最佳的答案。當時面試時沒有其他條件的限制,卻只能給出了幾乎是最差的答案 當看到這個命題一步一步的限制的時候,我也只能給出第三步的答案。昨天有幸又翻到了這個題目,自己順手做做,居然仍然沒有太多的進步,最佳答案的思路在腦海裡面已經不...
怎樣檢測鍊錶中存在迴圈?
這應該是乙個比較老的題目,在一次面試的過程中碰到過該題目,並沒有能夠給出最佳的答案。當時面試時沒有其他條件的限制,卻只能給出了幾乎是最差的答案 當看到這個命題一步一步的限制的時候,我也只能給出第三步的答案。昨天有幸又翻到了這個題目,自己順手做做,居然仍然沒有太多的進步,最佳答案的思路在腦海裡面已經不...