首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查目录是否存在Visual Basic (System.IO.Directory不工作)

检查目录是否存在Visual Basic (System.IO.Directory不工作)
EN

Stack Overflow用户
提问于 2019-04-16 00:34:47
回答 1查看 467关注 0票数 0

当调用此方法时,它只返回错误,系统变量未定义。

我当前正在尝试创建一个GPO登录脚本,用于检查目录是否存在以及是否未创建该目录。

我只是非常困惑,因为有这么多的visual basic变体,我似乎找不到我需要的。是我需要的visual basic,vbs,vb.net,或者vb脚本,我真的迷路了。

System.IO.Directory只是给我返回了一个错误,我已经尝试了很多其他的方法,但都收到了同样的错误。

代码语言:javascript
复制
Option Explicit
Dim l: l = "Z:"
Dim s: s = "\\TEST-SERVER\Shared Folder"
Dim Network: Set Network = CreateObject("WScript.Network")
Dim CheckDrive: Set CheckDrive = Network.EnumNetworkDrives()
Dim DriveExists: DriveExists = False
Dim i
'check to see if drive exists
For i = 0 to CheckDrive.Count - 1
  If CheckDrive.Item(i) = l Then
    DriveExists = True
  End If
Next
'if drive doesnt map it
If DriveExists = False Then
  Network.MapNetworkDrive l, s, False
Else
 'drive already mapped
End If


Dim strDirectory 
strDirectory = "C:\Screensaver"
If(Not System.IO.Directory.Exists(strDirectory)) Then
    System.IO.Directory.CreateDirectory(strDirectory)
End If
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-16 01:25:10

System.*是用于VB.net的,但是脚本的其余部分看起来像是想要成为VBS。VBS可以使用FileSystemObject与文件夹进行交互。

在您尝试创建目录的部分尝试执行以下操作:

代码语言:javascript
复制
Dim strDirectory
strDirectory = "C:\Screensaver"
Set fso = CreateObject("Scripting.FileSystemObject")
If(Not fso.FolderExists(strDirectory)) Then
    fso.CreateFolder(strDirectory)
End If
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55693652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档