繁体   English   中英

File.Create(路径)错误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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM