1

我在 vb.net 中编写了以下代码来删除该文件。

If File.Exists(strPath & "\ReportEng.ini") = True Then
File.SetAttributes(strPath & "\ReportEng.ini", FileAttributes.Normal)
File.Delete(strPath & "\ReportEng.ini")
End If
File.Copy("\\192.168.0.1\SAP_Shared\AddonExtra\ReportEng.ini", strPath & "\ReportEng.ini")

此代码在 windows xp 中完美运行。但在 Windows 7 中,我无法删除它。从开发人员的角度来看,这个操作系统是忙碌的操作系统。出现某些或其他问题,Microsoft 在构建此操作系统时没有考虑开发人员。

如何在 Windows 7 中删除文件?

4

3 回答 3

1

这样做很容易;

If My.Computer.FileSystem.FileExists("C:\somefile.ext") Then 'Check whether file exists
        My.Computer.FileSystem.DeleteFile("C:\somefile.ext") 'Delete the file!
End If

祝你今天过得愉快!

于 2012-05-16T17:39:04.830 回答
0

您不需要删除文件:有一个重载File.Copy Method (String, String, Boolean)允许覆盖。

你没有说你得到了什么错误。我怀疑这是因为用户没有对该目录的写访问权。您可能应该使用 Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)or 也许返回的目录的子目录.LocalApplicationData,而不是包含该程序的目录。

此外, usingPath.Combine(strPath, "ReportEng.ini")是您组合路径的方式 - 它会为您处理例如尾随路径分隔符。

于 2012-05-16T18:21:08.957 回答
-1

与 Windows 文件系统交互的首选方法使用以下命名空间:

Imports Microsoft.VisualBasic.FileIO.FileSystem

要删除文件:

Dim FileLocation As String = strPath & "\ReportEng.ini"
If Not GetDirectoryInfo(FileLocation).Exists Then
  GetFileInfo(FileLocation).Delete()
End If
于 2012-05-16T05:56:46.053 回答