.net 使用C查找/访问CDROM驱动器上的文件#
我试图在CD-ROM驱动器上找到一个文件,以便使用C#console应用程序复制到硬盘驱动器上 我能够找到驱动器号和驱动器名。但我不知道如何找到或定位文件,以便执行从CD-ROM驱动器到硬盘驱动器的复制操作 在尝试实现上述目的的同时,到目前为止,我已经尝试了以下代码.net 使用C查找/访问CDROM驱动器上的文件#,.net,file-copying,cd-rom,.net,File Copying,Cd Rom,我试图在CD-ROM驱动器上找到一个文件,以便使用C#console应用程序复制到硬盘驱动器上 我能够找到驱动器号和驱动器名。但我不知道如何找到或定位文件,以便执行从CD-ROM驱动器到硬盘驱动器的复制操作 在尝试实现上述目的的同时,到目前为止,我已经尝试了以下代码 foreach (DriveInfo drive in collection) { if (drive.DriveType == DriveType.CDRom) { if (drive.IsReady)
foreach (DriveInfo drive in collection)
{
if (drive.DriveType == DriveType.CDRom)
{
if (drive.IsReady)
{
try
{
string filePath = drive.RootDirectory.ToString();
string name = drive.Name;
string fileName = Path.GetFileName(filePath);
path = filePath + "\\" + fileName;
if (File.Exists(path))
{
File.Copy(path, @"C:\Users\newfolder");
}
MessageBox.Show("File is copied. Please run BC 360 agai");
}
catch (Exception ex)
{
MessageBox.Show("There is some problem with copying file: \n" + ex.Message);
}
}
}
}
您将枚举所有目录及其包含的文件,然后比较名称,直到找到所需的内容 请看这里
但是我不明白的是,如果你需要定位文件,你必须知道文件名,对吗?因此,您丢失了CD-ROM上文件的相对路径?谢谢Frank,这个枚举很有帮助。你能多帮我一点忙吗。为了满足我的复制操作,我的exe首先安装在计算机中。下次如果我再次尝试复制具有相同exe的文件,计算机将不允许我。复制操作完成后,我是否可以立即卸载应用程序?这取决于您使用的安装工具,例如单击一次、Installshield、WIX等。。。我想问一个不同的问题,因为这与文件枚举无关。另外,您的要求也没有真正意义:您安装了一个软件,该软件从一个CD-ROM中复制一个文件,而您不知道该文件在CD-ROM上的确切位置,然后再次将其自身删除?我的应用程序的目的是提供一个可执行CD以及其中的*.jar文件。我的供应商将使用它。谁不是那么精通技术。我正在使用Click Once工具在我的供应商机器上安装应用程序。但是如果我下次提供另一个jar文件和可执行文件,它将不会运行,因为应用程序已经安装。抱歉,因为我之前没有清除场景。