怎么在COM组件中添加设置回调函数的接口

怎么在COM组件中添加设置回调函数的接口,第1张

函数声明类似:

HRESULT SetCallBack( long hHandle, long ( __stdcall * CallBack )( long lType, long lPara1, long lPara2 ) )

但是使用MFC向导添加不上,提示错误。

手动修改idl文件添加

[helpstring( "method SetCallBack ")] HRESULT SetCallBack(long hHandle,long ( __stdcall * CallBack)( long lType, long lPara1, long lPara2 ))

编译出错,提示错误

------解决方案--------------------------------------------------------进程外组件不能采用这种方法,因为你的指针地址只对本进程有效,跨进程最好通过connection point来实现,com会自动处理指针跨进程空间的问题。

1、虚拟机设置com接口,通常是用于内核调试,一般使用命名管道功能,将命名管道设置为:\\.\pipe\com_1。

2、在虚拟机xp系统中,将boot.ini文件加上com接口项。如果是对windows进行内核调试,需要加上 /debug参数,设置com接口,只需要加上:

/debugport=com1

使用/baudrate来指明串口通信的速度。

/baudrate=57600

3、在连接虚拟机com接口的时候,需要指明com接口的管道名名,com:port=\\.\pipe\com_1,baud=57600,pipe ,baud就是上面设置的串口通信速率。pipe参数用于说明使用的管道串口通信。

LPT端口打印机专用)

LPT并口是一种增强了的双向并行传输接口,在USB接口出现以前是扫描仪,打印机最常用的接口。最高传输速度为1.5Mbps,设备容易安装及使用,但是速度比较慢。

COM端口

那也是个打印机接口.打印机有两种接口,一种是COM接口,还有一种是USB接口.USB接口通常是用在喷墨打印机上的,而COM接口是用在针字打印机和激光印字机,不过激光印字机也有USB接口。

COM端口是多功能的端口,还可以接游戏手柄、鼠标(老式的)等其它设备。

机箱后面最长的就是LPT端口,全是针眼插孔,即雌头。

短一些的是COM端口,全是突出的针眼,即雄头。

现在来说:打印机采用USB接口的最多,因为USB接口的传输速度比LPT和COM快很多!

谢谢浏览!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11263879.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存