[英]file.create overwriting my declared path with the original app directory & my declared path vb.net
[英]File.Create(path) error VB.NET
嗨,我在一开始就成功使用了以下代码,但我不知道自己做了什么,因此它停止在(ProgramFiles)\\UniWin Activator Data
文件夹下创建MessageIO.dat
文件
我使用此代码:(结果:仅创建文件夹UniWin Activator Data
)
Dim UniWinPath As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), "UniWin Activator Data")
Directory.CreateDirectory(UniWinPath)
Dim MsgIO = Path.Combine(UniWinPath, "\MessageIO.dat")
File.Create(MsgIO)
并使用了它:(结果: File.Create
命令File.Create
)
Dim UniWinPath As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), "UniWin Activator Data\MessageIO.dat")
File.Create(UniWinPath)
并使用了这个:(结果:什么也没发生)
Dim UniWinPath As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), "UniWin Activator Data")
Dim MsgIO = Path.Combine(UniWinPath, "\MessageIO.dat")
File.Create(MsgIO)
创建该文件的方式是什么? (我已经拥有管理员权限)
合并路径时,请勿在第二个路径项的开头指定“ \\”字符,因为这将表示根路径! 例如,Path.Combine(“ D:\\ Folder1”,“ \\ MessageIO.dat”)将产生“ \\ MessageIO.dat”。 但是您必须编写Path.Combine(“ D:\\ Folder1”,“ MessageIO.dat”),它将返回“ D:\\ Folder1 \\ MessageIO.dat”
注意:在Windows 7或更高版本中,访问特殊文件夹(如程序文件)需要特殊权限! 检查您的应用是否具有此类权限。 (您可以先测试其他norman文件夹,以确保代码的其他部分正常)
您的代码的第一个很好。 只需将Dim MsgIO = Path.Combine(UniWinPath, "\\MessageIO.dat")
更改为Dim MsgIO = Path.Combine(UniWinPath, "MessageIO.dat")
。 (删除反斜杠)。 Path.Combine
自动添加一个。 与往常一样,要访问特殊目录,请确保您具有Administrator Privilges。 后两个代码不起作用的原因是File.Create
在现有目录中创建了一个文件。 它无法创建目录本身。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.