我执行的功能是:
1.判断c:盘这个.ocx文件是否存在,如果存在就不释放资源文件了,如果不存在就释放这个资源文件
2.注册这个控件
3.程序退出时注销这个控件。
以上执行过程是正常的 没有问题但是更改后就有问题了
我把程序退出时注销控件这个方法给去掉了,然后就出现.ocx文件被占用的问题,请问怎么解决呀?我就是不想每次都注册,注册很慢,所以就把注销方法给去掉了,于是就出问题了

解决方案 »

  1.   

    .ocx被写入c:盘,然后注册,如果不解注册的话,.ocx文件就一直被占用着,无法读写。
    怎么回事呀?头都晕了
      

  2.   

    用工具(如procexp)查看该ocx模块被谁使用, 再去找具体的原因
      

  3.   

    楼上的话对我很有启发。我发现不是我的句柄没有释放,而是如果不解注册,那么再次打开编译器的时候,编译器就会调用这个.ocx。也就是说,我想读写的文件就已经被占用,于是就出现了问题。那么我现在的问题也就变了
    如何判断被占用的文件已经存在,和如何读写被占用的文件呀?
    如果文件被占用,用Open返回的始终是FALSE,createfile也是无法创建文件的。。
    希望高手指点!