该进程无法访问该文件,因为它正在被另一个进程使用

该进程无法访问该文件,因为它正在被另一个进程使用,第1张

概述该进程无法访问该文件,因为它正在被另一个进程使用 @H_403_0@当我从一个bat文件启动我的.net控制台应用程序,例如start myapp.exe

@[email protected]然后尝试写入一个文件到它的当前目录,虽然我得到一个.net运行时错误,声称该文件正在被另一个应用程序使用(没有别的运行)

@H_403_0@http://img.zgserver.com/c%23/XLmnR.png

@H_403_0@虽然当我通常用一个batch file启动它,例如双击它,它运行良好,并输出文件罚款。 我认为这可能是与privilages做,尽pipe尝试运行batch file作为pipe理员,我得到了同样的错误“文件正在使用…”

@H_403_0@钩从窗口事件从AC#windows服务应用程序不起作用

@H_403_0@拦截MS windows的“SendTo”菜单调用?

@H_403_0@在没有安装Excel的情况下以编程方式填充Excel模板

@H_403_0@输出到C#中的文本文件输出

@H_403_0@我在Win Phone 8上做了一个手电筒应用程序,但是我不能关掉LED,我怎么做?

@H_403_0@任何人都可以解释这一点吗?

@H_403_0@码:

@H_403_0@using System; using System.Collections.Generic; using System.linq; using System.Text; using System.IO; namespace fileSearcher { class Program { static voID Main(string[] args) { string dirPath = "C:\"; fileSystemWatcher fileWatcher = new fileSystemWatcher(dirPath); fileWatcher.IncludeSubdirectorIEs = true; fileWatcher.Filter = "*.exe"; // fileWatcher.Filter = "C:\$Recycle.Bin"; // fileWatcher.Changed += new fileSystemEventHandler(fileWatcher_Changed); fileWatcher.Created += new fileSystemEventHandler(fileWatcher_Created); // fileWatcher.Deleted += new fileSystemEventHandler(fileWatcher_Deleted); // fileWatcher.Renamed += new RenamedEventHandler(fileWatcher_Renamed); fileWatcher.EnableRaisingEvents = true; // updated code Console.ReadKey(); } static voID fileWatcher_Renamed(object sender,RenamedEventArgs e) { Console.Writeline(e.oldname + " was renamed to " + e.name); } static voID fileWatcher_Deleted(object sender,fileSystemEventArgs e) { Console.Writeline(e.name + " was deleted"); } static voID fileWatcher_Created(object sender,fileSystemEventArgs e) { using (StreamWriter fileWriter = new StreamWriter("process.lst",true)) { var data = true; fileWriter.Write("C:\" + e.name + Environment.Newline); } } static voID fileWatcher_Changed(object sender,fileSystemEventArgs e) { Console.Writeline(e.name + ""); } } }

@H_403_0@在.NET中自动缩放图像

@H_403_0@该键集没有定义

@H_403_0@什么是顺序DLL版本的正确方法

@H_403_0@使用c#在本地注销windows用户

@H_403_0@如何从C#.net客户端列出linux运行进程?

@H_403_0@它看起来像从你的批处理文件,你正在发送标准输出(1>)到你正在写在你的应用程序相同的文件(process.lst)。 你可以做一个或另一个,而不是两个 。

@H_403_0@例如,这个应用程序在单独运行时工作正常:

@H_403_0@static voID Main(string[] args) { StreamWriter writer = file.CreateText("process.lst"); Console.Writeline("Writing to the file."); writer.Write("Testing 1.2.3.4"); Console.Writeline("Finished."); }

@H_403_0@但是,从命令行运行时,如myTestApp.exe 1> process.lst产生相同的异常,你有:

@H_403_0@The process cannot access the file 'process.lst' because it is being used by another process.

@H_403_0@尝试在OnCreated事件完成后执行您的过程。 也许启动一个短计时器,并在计时器滴答时写入文件(记住要停止计时器)

@H_403_0@即使文件尚未写入,文件已被创建的事件也立即被触发。 当你得到IOException时,你应该总是试着打开这个文件并稍微等一下。 你可以在这里找到一个解决方案: http : //bloggingabout.net/blogs/Jschreuder/archive/2006/07/06/12886.aspx

总结

以上是内存溢出为你收集整理的该进程无法访问该文件,因为它正在被另一个进程使用全部内容,希望文章能够帮你解决该进程无法访问该文件,因为它正在被另一个进程使用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1292462.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存