您好我在开始时成功使用了代码,但我不知道我做了什么,所以它停止在文件夹MessageIO.dat
下创建文件(ProgramFiles)\UniWin Activator Data
我使用了这段代码:(结果:仅创建文件夹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
出错}
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)
创建该文件的方式是什么? (我已经拥有管理员权限)
答案 0 :(得分:0)
组合路径时,不应指定" \" char在第二个路径项的开头,因为这将意味着根路径! 例如,Path.Combine(" D:\ Folder1"," \ MessageIO.dat")将导致" \ MessageIO.dat"。但你必须编写Path.Combine(" D:\ Folder1"," MessageIO.dat"),它将返回" D:\ Folder1 \ MessageIO.dat"
注意:在Windows 7或更高版本中,访问特殊文件夹(如Program Files)需要特殊权限!检查您的应用是否拥有此类权限。 (您可以先测试其他诺曼文件夹以确保代码的其他部分正常)
答案 1 :(得分:0)
你的第一个代码非常好。只需将Dim MsgIO = Path.Combine(UniWinPath, "\MessageIO.dat")
更改为Dim MsgIO = Path.Combine(UniWinPath, "MessageIO.dat")
即可。 (删除反斜杠)。 Path.Combine
会自动添加一个。和往常一样,要访问特殊目录,请确保您拥有管理员权限。最后两个代码不起作用的原因是File.Create
在现有目录中创建了一个文件。它无法自己创建目录。