我现在要做一个dll,用来读取com1 口的opos 打印机状态,
然后用 打印机自带的一个ocx 执行打印,但是自带的ocx 是厂家封装好的,
只提供几个接口函数,且只支持自己型号的打印机,其他型号的打印机可以执行打印,但是获取不到打印机的状态。
现在的问题是,ocx 占用了 com1,我写的dll怎么才能够读或写com口啊。
请大家帮帮哈!

解决方案 »

  1.   

    其实不好 处理!毕竟COM1同时只能被一个人打开,你只能牺牲速度,用OCX的时候,关闭你自己的DLL,反之一样。
      

  2.   

    似乎没有好的办法,不知是否能够捕捉到com的传输信息
      

  3.   

    用HOOK技术,可以实现!!
    但没试过
      

  4.   

    感动啊,终于有人帮忙了啊。我现在不用ocx,自己做个dll 来处理,现在用一个单独的线程来读取打印机的状态,我采用的是I/O 重叠异步的方式来处理的,但是不知道,如何获取具体某一条打印指令返回结果啊??
    还有一个问题就是,可不可以同时进行读写操作啊,就是在写的时候,要不要停止线程中的读操作??
    急啊,多谢各位了