我的文件传输应用程序现在正在运行,以应有的方式传输文件。但是我遇到了另一个问题,我相信 stackoverflow 中的某个人可以对此有所了解。
当我第一次传输文件,目标位置没有任何重复时,或者当我再次传输相同的文件以在程序运行时覆盖现有的重复文件时,问题不会发生。但是当我关闭程序然后重新打开它以再次传输相同的文件时,在目标位置上存在之前传输的文件的现有副本,就会出现问题。
我得到错误UnauthorizedAccessException: Access to the path denied
我不认为这是用户权限问题,因为我在管理员帐户中运行该软件。但是,当然,我不是 100% 确定这一点。如果我的假设有误,请纠正我。
对此有什么建议吗?我相信,我可以通过File.Exist
结合使用一些代码来解决这个问题,但我敢打赌有更好的方法来解决这个问题。
这是我的代码。
'This is where the error occurs; in the initialization of fileStream
'Maybe this has something to do with FileAccess and FileMode? I'm not sure.
Using fileStream As New FileStream(FilePath, FileMode.Create, FileAccess.Write)
FileSharingStatusBar.Panels.Item(1).Text = "Receiving file . . ."
Do Until TotalData = FileLength
If ReadBytes = 0 Then
fileStream.Close()
FileTransferInterrupted = True
Exit Do
Else
ReadBytes = ClientSocket.GetStream.Read(FileData, 0, FileData.Length())
fileStream.Write(FileData, 0, ReadBytes)
TotalData += ReadBytes
End If
Loop
End Using