MSComm控件与Win32 API操作串口有何区别?解决思路

MSComm控件与Win32 API操作串口有何区别?
我以前用MSComm控件写了串口程序,感觉不是很好用。突然断电,重起就会出现问题。错误提示:port   already   open!  
        这次想用Win32   API操作串口,是不是比MSComm控件好用?
        Win32   API操作232串口,边读边发数据,编程时需要注意什么吗?

        请大虾们指教!!

------解决方案--------------------
一般来说,用API写出完整无缺的好程序,我觉得比较难。
当然是大多都是水平问题和很多细节问题,以前写过同步方式的,98下工作非常好,但换系统后出现问题。
目前的观念是用异步方式,编程用多线程。

你可以参考这个帖子的讨论。
http://community.****.net/Expert/TopicView3.asp?id=5631034
------解决方案--------------------
控件最终都是通过API实现的,只不过包装一下而已。
------解决方案--------------------
fronz() —— 误人子弟!

楼主选用 Win32 API 是绝对正确的!


------解决方案--------------------
API好用一点,反正都是自己设计的代码,出什么问题可以自己修改
------解决方案--------------------
自己锻炼着写一下,未必就不是好事
------解决方案--------------------
其实都差不多,用api相对麻烦一些。
通常在打开串口之前要判断它是否已经被打开或者被占用。
------解决方案--------------------
到codeproject.com上找pj.nauter的cserialport类吧,用的人一大堆.
------解决方案--------------------
控件只是一个包装。

但是因为这个包装,
用起来自然简单多了。

通常我的观点是,
掌握 API,使用空间【学习根本的,但是使用的确实相对简单的】