MFC编写的串口程序为什么在别的电脑上打不开啊?
我是用VC6.0编写的一个串口测试程序,直接使用MFC的COM控件,在编译的电脑上可以随意的运行,但是将exe文件弄到其他的没有编译环境的电脑,就是运行不了,界面都出不来...
我是用VC6.0编写的一个串口测试程序,直接使用MFC的COM控件,在编译的电脑上可以随意的运行,但是将exe文件弄到其他的没有编译环境的电脑,就是运行不了,界面都出不来,也没有任何提示信息?请大侠指教
展开
3个回答
展开全部
MFC的COM控件,你需要做的就是在你自己的电脑上搜索到这个文件:MSCOMM32.OCX
找到之后复制到另一台机器的c:/windows/system32下,然后运行regsvr32 mscomm32.ocx 命令,就可以了。
找到之后复制到另一台机器的c:/windows/system32下,然后运行regsvr32 mscomm32.ocx 命令,就可以了。
追问
那能在软件启动的时候去注册这个控件吗?如果可以,又如何注册呢?
追答
最好是弄个安装包,打包ocx文件。
因为即使你程序中注册,也不能确保这个文件存在,并知道文件位置啊。
程序中注册,在程序入口处,用DllRegisterServer 函数,也可以用ShellExecute执行命令行。但需要的支持代码太多,首先要判断判断控件是否注册了(通过访问注册表),然后要判断ocx是否在合适的位置(这个可能还要手工),然后要找到windows标准目录,最后注册,这些都要用代码实现。
展开全部
应该是运行环境问题,看看目标机器上是不是有你使用的com控件,二是检查你使用的com口在目标机器上是否存在。
如果都没有问题,就改一下程序,加上调试信息,看看在什么位置上出了问题。
如果都没有问题,就改一下程序,加上调试信息,看看在什么位置上出了问题。
追问
我只是加了COM控件,启动之后,要选择端口号,再启动串口,但是连界面都没出现,也看不到有这个进程运行啊!!!
追答
你编译程序是不是使用了Debug?
编译成release再试试。
因为debug使用的dll一般机器上是没有的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
需要绑定控件
追问
请问怎么绑定?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询