質問

名前のテキストファイルを作成する必要があります」listfile.txt「フォルダー内 c:ドキュメントと設定すべてのユーザーアプリケーションデータ netapp system それで、私は次のvbscriptを行い、それをacheiveしました

Const CommonAppData = &H23&  ' the second & denotes a long integer '
Const OSCPATH = "\netapp\system"
Dim fso, MyFile

Set objShell  = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(CommonAppData)

Set objFolderItem = objFolder.Self

'MsgBox objFolderItem.Name & ": " & objFolderItem.Path


Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("objFolderItem.Path & OSCPATH\listfile.txt", True)
MyFile.WriteLine("This is a test.")
MyFile.Close

しかし、パスに言及するスローエラーは見つかりません

** Windowsスクリプトホスト

スクリプト:c:ドキュメントと設定 puthuprf desktop test.vbs行:15 char:1エラー:パスが見つかりませんコード:800a004c

出典:Microsoft VBScriptランタイムエラー

わかった
---------------------------**

役に立ちましたか?

解決

スクリプトのこの行は正しくありません:

Set MyFile = fso.CreateTextFile("objFolderItem.Path & OSCPATH\listfile.txt", True)

変数とオブジェクトプロパティを文字列に挿入するには、 & このようなオペレーター:

Set MyFile = fso.CreateTextFile(objFolderItem.Path & OSCPATH & "\listfile.txt", True)


使用することをお勧めします BuildPath パスの複数の部分を組み合わせて、必要なパスセパレーターを追加することから解放されるため(\)手動で:

strFileName = fso.BuildPath(objFolderItem.Path, OSCPATH)
strFileName = fso.BuildPath(strFileName, "listfile.txt")

Set MyFile = fso.CreateTextFile(strFileName, True)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top