当在两个ComboBox中放入正确的值并执行代码时,此代码为我提供了一个ArgumentExeption。代码基本上只是删除一个文件,并用从另一个文件夹中获取的修改版本替换它。
以下是错误消息的确切文本: Microsoft.VisualBasic.dll中出现未处理的“System.ArgumentException”类型异常
附加信息:给定的文件路径以目录分隔符结尾。
以下是代码:
If ComboBox1.Text = "Nokia" And ComboBox2.Text = "HTC" And My.Computer.FileSystem.FileExists("C:\Users\" + user + "\Documents\Fiddler2\Scripts\CustomRules.js") Then
My.Computer.FileSystem.DeleteFile("C:\Users\" + user + "\Documents\Fiddler2\Scripts\CustomRules.js")
My.Computer.FileSystem.CopyFile("Config\OEM\NokiaHTC.js", destinationFileName:="C:\Users\" + user + "\Documents\Fiddler2\Scripts\")
Else
My.Computer.FileSystem.CopyFile("Config\OEM\NokiaHTC.js", destinationFileName:="C:\Users\" + user + "\Documents\Fiddler2\Scripts\")
End If
答案 0 :(得分:1)
问题是目标文件路径以"\"
值结尾。这对CopyFile
API不合法。切换它以包含文件名,这应解决问题
My.Computer.FileSystem.CopyFile( _
"Config\OEM\NokiaHTC.js", _
destinationFileName:="C:\Users\" + user + "\Documents\Fiddler2\Scripts\NokiaHTC.js")