1. 程式人生 > >串列埠模組總結

串列埠模組總結

這一次我把VC6.0上執行沒有問題的串列埠模組挪到VS2010上。
字符集轉換的問題我已經很好地解決了,編譯通過,執行的時候卻發現程式無法找到串列埠。
在這裡插入圖片描述
自然無法連線和收發資料。
我實在不知道為什麼不行,所以我查了一下串列埠通訊:
在這裡插入圖片描述
我的程式碼是用了第二種方法,使用了Active X控制元件。
我在BOOL CxxxxApp::InitInstance()的實現裡找到了這句程式碼

AfxEnableControlContainer();
/*想在應用程式中使用ActiveX控制元件,必須使你的應用程式成為ActiveX控制元件包容器。
ActiveX控制元件包容器就是完全支援ActiveX控制元件,並能把控制元件組合進自己的視窗或對
話框的父應用程式。
在用AppWizard建立新的應用程式時,就可以在第三步選中支援ActiveX control的
複選框直接設定這個支援
要是忘記選了,就在這裡手動新增這個函式,手動加入這個支援,效果是一樣的*/

但是我一直沒有在對話方塊里加入MSComm控制元件?
加上去,執行還是沒有成功。
在這裡插入圖片描述
直到我隱掉了xxxxDlg.cpp裡面初始化函式BOOL CxxxxDlg::OnInitDialog()裡清空串列埠號、搜尋串列埠的程式碼
在這裡插入圖片描述
程式能用了,但是也犧牲了一部分功能。
在這裡插入圖片描述
實際上電腦只有五個串列埠:
在這裡插入圖片描述
我還沒找到解決辦法。

mark
https://www.cnblogs.com/zhuxuekui/p/3551350.html
在這裡插入圖片描述