两个线程同时操作 迟早会出问题的
总不能老try异常吧?建议只让其中一个管理文件 另一个连接这个exe操作或者建立一个中间程序 2个都访问它

解决方案 »

  1.   

    进程间共享数据可以使用win API 的创建共享内存实现。下面是一个C++的例子:
    http://msdn.microsoft.com/en-us/library/ms686958(VS.85).aspx
      

  2.   

    test.dat是磁盘上的一个物理数据文件,可以对进程2添加一个文件监控器
    微软提供了一个 FileSystemWatcher 对象,
    你可以实例化一个watcher对象,并委托一些事件,如:
                this.watcher = new FileSystemWatcher();
                //this.watcher.Deleted += new FileSystemEventHandler(watcher_Deleted);
                //this.watcher.Renamed += new RenamedEventHandler(watcher_Renamed);
                this.watcher.Changed += new FileSystemEventHandler(watcher_Changed);
                this.watcher.Created += new FileSystemEventHandler(watcher_Created);
    只要文件有变动,都讲触发事件,,你则可以在这些事件里进行“打印有变动的数据了”
      

  3.   

     远程技术 有很多种,现在都统一在WCF之下了,楼主可以看一下,具体就你这个问题 我认为可以用MSMQ 解决你 先添加引用 System.Message.dll 这样可以使用MSMQ 还需要 确定的你计算机上安装了MSMQ 可选组件然后可以  用MSMQ进行进程间通讯,然后再协调处理 待处理文件.
      

  4.   

    效率上会打折扣,所以问有没有更好的方法啊。4楼提供的FileSystemWatcher   类,我会试试,看看结果如何。