我的解决方案有两个项目,一个是Input.dll, 一个是引用他的dll,然后编译的时候老是报错“无法将文件“Cisdi.Windows.Forms.dll”复制到运行目录。进程无法访问文件,因为另一个程序正在使用此文件。”
为什么老是报这个错,我不得不关了VS,然后再把Input.dll删掉,再启动VS再重新编译,就好了。。

解决方案 »

  1.   

    第二项目是什么类型项目,如果是asp.net或者webservice的程序,需要kill系统的asp_net.exe进程。
      

  2.   

    To: penua(阿P)
    关了解决方案不行To: Knight94(愚翁) 
    是Windows Form程序
      

  3.   

    to 是Windows Form程序看看程序进程是否完全关闭。
      

  4.   

    to Knight94(愚翁):当然确定已经完全关闭
      

  5.   

    你的winform是个多线程程序吗?
    如果是,在关闭winform的时候,先结束掉这个线程!
      

  6.   

    有些时候是GC没有及时回收,另外这个Dll使用一些如COM+之类的资源,这个就不容易释放了。另外一个简单的问题,是不是在引用的时候直接引用的bin/debug 目录下的这个文件?
      

  7.   

    to kaphoon(齐柏林飞艇) :
    不是,进程线程都是关闭了的。liangxf0022(真真白痴) :
      恩,差不多是引用的debug目录下的。我是将输出目录改为其他目录,然后引用的。这样有问题吗???
      另外,肯定没有用到Com的东西。
      

  8.   

    有可能那个dll文件被意外的设置为只读,也有可能上次关闭时候进程没有被杀死!知道怎么解决了吧!
      

  9.   

    to yizhiguanian(1只瓜年):
    进程是杀掉了的,我专门在进程管理里面看了的,甚至连进程包括的线程斗查了的,斗没有找到那个dll。然后也没有被设置为只读
      

  10.   

    to zdjray(.Net的名字):
    删了的,没用
      

  11.   

    不能引用bin\debug\下的
    要引用obj\debug\下的(项目引用)
      

  12.   

    noway8881(老虎不发威,你当我是Hello Kitty不行