我想在DLL中使用MSCOMM控件,但调用时会出现未标记存储的错误,不知哪位大侠能帮忙解惑,高分相赠。

解决方案 »

  1.   

    我在dll中用mscomm,没问题啊,我直接用,还有在dll中启一个线程在调用,都没问题啊,会不会是因为mscomm是个ActiveX,而你在用之前没用:CoInitialize(nil);初始化;
      

  2.   

    我是在DELPHI中调用的,有什么函数可替代VC中的:COINITIALIZE吗,在VC中我先用你说的办法试试,THX
      

  3.   

    楼上两位说的对:在delphi中使用COM+的控件需要使用下面的方式调用,下面两行好成对使用...CoInitialize(NIL);
    ......CoUninitialize
      

  4.   

    前几天写一个89c52的单片机通信程序发现MScomm控件在不同的windows平台上有问题.
    建议使用createfile,getcommstate,setcomm,readfile,writefile等API函数.
    或者使用spcomm不过16进制和10进制转换有点问题.