2015-08-03 8 views
1

создать .vbs файл (который может: Creat текстовый файл -> Открыть notepad.exe -> удалить вышеуказанный файл), как это:VBScript может создавать текстовый файл, но не может удалить файл (разрешено разрешение)?

' Create a new file 
Dim objFS, objFile 
Set objFS = CreateObject("Scripting.FileSystemObject") 
Set objFile = objFS.CreateTextFile("D:\Folder\Textfile.txt") 
objFile.WriteLine ("sample text") 

' Run a program and wait 
WScript.CreateObject("WScript.Shell").Run "notepad.exe", 1, true 

' Delete file 
objFS.Deletefile("D:\Folder\Textfile.txt") 

Но когда я запускаю его, после того, как близко блокнота окна, его показать сообщение об ошибке:

Line: 10 
Char: 1 
Error: Permission denied 
Code: 800A0046 
Source: Microsoft VBScript runtime error 

Я не знаю, почему этот .vbs не может удалить текстовый файл? Спасибо за любую помощь!

ответ

2

Перед попыткой удалить его необходимо закрыть дескриптор файла.

' Create a new file 
Dim objFS, objFile 
Set objFS = CreateObject("Scripting.FileSystemObject") 
Set objFile = objFS.CreateTextFile("D:\Folder\Textfile.txt") 

'write to the file 
objFile.WriteLine ("sample text") 

'close the file 
objFile.close 
set objFile = Nothing 

' open the file in notepad, and wait 
WScript.CreateObject("WScript.Shell").Run "notepad.exe D:\Folder\Textfile.txt", 1, true 

' Delete file 
objFS.Deletefile("D:\Folder\Textfile.txt") 

set objFS = Nothing 
+0

Это работало отлично! Большое вам спасибо, BTW, можете ли вы рассказать мне, где узнать вышеприведенный сценарий и какую-нибудь полезную вещь о VBS? – Baeb

+0

вы можете проверить это: [Основы VBScript] (https://msdn.microsoft.com/en-us/library/0ad0dkea.aspx), а также проверить другие разделы в msdn – SearchAndResQ

 Смежные вопросы

  • Нет связанных вопросов^_^