对应CSerialPort使用的时候,如果调用的StopMonitoring()函数,那么我在关闭整个程序的时候,无法进入CSerialPort进行解析,资源无法释放。不知道那位大虾,知道的来解释一下啊。

解决方案 »

  1.   

    无法进入CSerialPort进行解析?解析什么,收到的数据?
    资源无法释放?释放什么,为什么调用StopMonitoring()需要释放资源?
    请说清楚
      

  2.   

    楼主的意思好像是:关闭程序的时候,代码的控制权进入不了串口类的代码,所以也无法释放串口类占用的资源。
    如果是这样,可以采用这样的办法:在串口类的析构函数中释放资源。在相应应用程序关闭的代码中调用delete CSerialPort。
      

  3.   

    在类中的存在小~ 的是叫析构吧,貌似我说错了。
    如果调用了StopMonitoring(),关闭程序时
    则会发生在~CSerialPort()中将一直处于等在状态。所以出现了程序被关闭时,打开资源管理器还是存在的。
    我现在想问的是StopMonitoring() 干嘛用的
      

  4.   

    http://blog.csdn.net/wuyazhe/archive/2010/05/19/5606276.aspx
    这个是我自己找到的,出现同样问题的 同学们一起参考一下啊
      

  5.   

    CSerialPort,没用过,一般用CreateFile.楼主的意思是虽然窗口关闭了,但在任务管理器里面还是可以看到这个进程.
    这种问题还是建议你分析一下你的代码.
      

  6.   

     就是这个问题,如果调用了StopMonitoring() 在析构上的循环回进入死循环。