我在一个对话框程序里面打开了一个串口,然后关闭程序(没有明显的closehandle来关闭打开的串口),为何我第二次进入程序的时候串口打不开了(我理解位是串口被占用,即第一次打开时候没有关闭,可是windows不是在关闭进程的时候会关掉进程申请的所有资源吗?),我的代码是c#写的,wince程序,这个怎么解释啊?要是在桌面window会这样吗?用c++写呢(即非托管)。

解决方案 »

  1.   

    个人理解windows关闭进程释放资源,但是对串口的调用并不是所谓的开辟了新的资源吧,打开串口好像是对IO的操作了,具体也不清楚,等大牛解释了。不过按编程习惯对于serilport的open,close操作都应该成对出现不是
      

  2.   

    vs  2008  有的不自动关闭你打开的浏览端口    你的手动关闭一下  不然报端口被占用 
    好像vs 2010  自动关闭你浏览页面的端口     
    具体也不知道了    就帮你顶下吧  呵呵