MFC編寫的串列埠程式為什麼在別的電腦上打不開啊?

2021-08-18 12:37:14 字數 725 閱讀 8652

mfc的com控制項,你需要做的就是在你自己的電腦上搜尋到這個檔案:mscomm32.ocx

找到之後複製到另一台機器的c:/windows/system32下,然後執行regsvr32 mscomm32.ocx 命令,就可以了。

【問】那能在軟體啟動的時候去註冊這個控制項嗎?如果可以,又如何註冊呢?

【答】最好是弄個安裝包,打包ocx檔案。

因為即使你程式中註冊,也不能確保這個檔案存在,並知道檔案位置啊。

程式中註冊,在程式入口處,用dllregisterserver 函式,也可以用shellexecute執行命令列。但需要的支援**太多,首先要判斷判斷控制項是否註冊了(通過訪問登錄檔),然後要判斷ocx是否在合適的位置(這個可能還要手工),然後要找到windows標準目錄,最後註冊,這些都要用**實現。

//cstrdirectory 是指目錄,如:d:\program files (x86)\ocxdemo

shellexecute(null, _t("open"), _t("cmd.exe"), _t("/c regsvr32 /u /s \"") + cstrdirectory + _t("\\ocxname.ocx\""), null, sw_hide);

VS2010編寫的MFC串列埠程式

剛剛學習mfc串列埠通訊,除錯了乙個串列埠通訊的程式,實現pc機與微控制器的串列埠通訊,能夠正常地收發資料。部分源 如下 開啟串列埠函式 void ccommtestdlg onbnclickedbuttonopen m mscomm.put commport 1 選擇com1 m mscomm.p...

編寫基於FormView的SDI串列埠程式

這幾天在使用串列埠除錯助手 scomassistant v2.2 會時不時的出現無法讀出資料。孰,興起自己編寫乙個串列埠軟體。本程式使用mfc框架,所以在使用的使用的時候需要mfc的dll的支援。關於建立mfc程式使用應用程式嚮導即可完成。我們只說運用win api函式操作串列埠的流程。1.建立 e...

編寫基於FormView的SDI串列埠程式

這幾天在使用串列埠除錯助手 scomassistant v2.2 會時不時的出現無法讀出資料。孰,興起自己編寫乙個串列埠軟體。本程式使用mfc框架,所以在使用的使用的時候需要mfc的dll的支援。關於建立mfc程式使用應用程式嚮導即可完成。我們只說運用win api函式操作串列埠的流程。1.建立 e...