嗨社区!
我在VB.Net中有一个应用程序,在用户的计算机中位于程序文件中。 用户始终以管理员身份运行程序。
但在某些情况下;当程序尝试重命名程序文件中的文件时,程序会抛出以下异常:
不支持给定路径的格式。 SOURCE = System.Security.Util.StringExpressionSet.CanonicalizePath
此外,当我尝试复制文件时也会发生。
应用程序会自动重命名或复制,并且它与所有用户的名称相同
示例:
Rename(vOld, vNew)
FileCopy(vOld, vNew)
此异常仅发生在Win7中。
有人知道某些用户出现此异常的原因是什么?
答案 0 :(得分:0)
当用户提供无效的文件名时会发生这种情况,例如包含冒号的文件名。
您应该验证用户输入的文件名不包含System.IO.Path.GetInvalidPathChars中的任何值。
答案 1 :(得分:0)
这都是我的错!
-_-'
我正在尝试重命名此路径:
C:\_MyFile.xlsx
要:
C:\MyFile.xlsx
在我的计算机中一切正常,因为我有两个文件(用户只有带下划线的文件)。
当程序尝试验证时,尝试将文件"_C:\MyFile.xlsx"
重命名为"C:\MyFile.xlsx"
该异常没有提供有关我的错误的详细信息......