我是C#新手,连接Firebird数据库时遇到问题。我想让我的程序访问Firebird数据库[FDB格式文件]。我有问题,请参见下面的代码:
File.Copy(pathway, new_pathway, true);
FbConnection addDetailsConnection = new FbConnection("User=sysdba;Password=masterkey;Dialect=3;Database= " + new_pathway +
";DataSource=localhost;" );
string SQLCOMMAND = " SELECT UOM FROM ST_ITEM_UOM WHERE CODE = 'ANT'";
addDetailsConnection.Open();
FbCommand readCommand = new FbCommand(SQLCOMMAND, addDetailsConnection);
FbDataReader myreader = readCommand.ExecuteReader();
while (myreader.Read())
{
MessageBox.Show(myreader[0].ToString());
}
myreader.Close();
readCommand.Dispose();
addDetailsConnection.Close();
addDetailsConnection.Dispose();
这段代码允许我读取FDB文件并提取数据。当代码第一次执行时,没有错误或问题,但是当我再次执行时,这个错误会显示出来:
进程无法访问文件“C:\Users\ACC-0001”。FDB’因为它正被另一个进程使用。
您可能遇到了这个Firebird问题:FB服务器报告说,另一个应用程序通过符号链接在二次附件尝试中使用了DB文件
它只发生在Windows上,并且只有当两个非嵌入式连接使用不同的路径名称时,其中一个或两个路径中都有符号链接,因此它们有效地指向相同的位置。
handle.exe
和ProcessExplorer
只会显示fbserver.exe
实际打开的规范(最终)文件名。
找出答案的唯一方法是:
手柄进行验证。exe
或Process Explorer
文件确实由fbserver打开。exe
(而不是通过使用嵌入式连接的进程本身)可以使用Handle检查哪个程序正在锁定文件。这可能是由您的代码或计算机上运行的另一个进程引起的。
该工具识别流程,例如:
C:
处理v3。46版权所有(C)1997-2011 Mark Russinovich Sysinternals-www.Sysinternals。通用域名格式
擅长EXE pid:3596类型:文件414:C:\test。xlsx
在这里找到的。
如果问题出在您的代码中,请确保您处理并关闭所有连接,最好在中使用
部分:
using (FbConnection addDetailsConnection = new FbConnection("..."))
{
// do work
}
更多关于使用
的详细信息可以在这里找到。
我的脚本搜索特定目录中的所有pdf文件,然后从pdf中提取一个id,并在文件中组织pdf。例如我有: 我想这样组织它们: 下面的脚本做的工作,但我认为只有最后一个文件输出以下错误: 回溯(最近一次调用):文件“C:\Users\user\Downloads\aa\project.py”,第74行,在操作系统中。rename(source,dest)PermissionError:[WinError
下面是使用Ucanaccess Jdbc驱动程序从Microsoft Access文件filename.accdb获取连接的代码。但在运行此代码时,它会抛出异常,就像已经使用的文件一样。 但是我想在其他应用程序使用MSAccess数据库文件时并发地使用它。 当我运行上面的代码时,出现了如下异常: net.ucanaccess.jdbc.ucanaccesssqlexception:UCAEXC::
我正在尝试查找文件的大小,并将该大小存储在中。为此,我保存文件的唯一名称,然后读取,最后删除文件。 我有时会在读取或删除文件时出错。 在阅读时,我得到了这个错误 拒绝访问路径'filename'。在System.io.__error.WinioError(Int32 errorCode,String maybeFullPath)在System.io.File.InternalDelete(Stri
问题内容: 我的代码用于一个脚本,该脚本查看一个文件夹并删除分辨率为1920x1080的图像。我的问题是我的代码运行时; 我收到此错误消息: 只需确认一下,Python是我计算机上运行的唯一程序。是什么导致此问题,我该如何解决? 问题答案: 您的过程就是打开文件的过程(仍然存在)。您需要先关闭它,然后再删除它。 我不知道PIL是否支持上下文,但是是否支持: 进入之前,请确保删除(并关闭文件)。 如
我是编程新手,我有一个问题。如果我有两个函数,一个创建一个文本文件并写入其中,而另一个打开同一个文本文件并从中读取。 我得到的错误是: 系统伊奥。IOException:'进程无法访问文件'@。txt“因为它正被另一个进程使用。” 我曾尝试为每个功能设置单独的计时器,但仍然不起作用。我认为最好的办法是函数二直到函数一结束才开始。 你能帮我实现这个吗?非常感谢!迈克 源代码:
当我试图删除一个文件时,它说我的服务器正在使用它,所以我尝试使用(Image img=Image.FromFile(imgFilePath))实现一个,但随后我得到了