Показать полную графическую версию : Установка\Снятие аттрибутов c помощью vbs
как снять аттрибут (чтение) с файла, ПРИМЕР на диске C:\qwerty.txt
как снять аттрибут (чтение) с файла, »
Атрибута «чтение» не существует в природе. Есть атрибут «ReadOnly», в просторечии именуемый атрибутом «Только для чтения»: File Attribute Constants (http://msdn.microsoft.com/en-us/library/windows/desktop/gg258117(v=vs.85).aspx).
Для чтения/установки атрибутов в WSH используется свойство «.Attributes» (Attributes Property (http://msdn.microsoft.com/en-us/library/5tx15443(v=vs.85).aspx)):
Option Explicit
Const ReadOnly = &H01
Dim objFSO
Dim objFile
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile("C:\qwerty.txt")
' Очистить атрибут «ReadOnly»
objFile.Attributes = objFile.Attributes And Not ReadOnly
' Установить атрибут «ReadOnly»
'objFile.Attributes = objFile.Attributes Or ReadOnly
Set objFile = Nothing
Set objFSO = Nothing
WScript.Quit 0
Iska, подскажи как Указать сразу не сколько файлов, с которых мне нужно снять аттрибут
For Each strFile In Array("C:\qwerty.txt", "c:\Temp\01.txt", "d:\02\02.log")
If objFSO.FileExists(strFile) Then
With objFSO.GetFile(strFile)
.Attributes = .Attributes And Not ReadOnly
End With
End If
Next
Iska, Опробовал Скрипт, выдает ошибку.
---------------------------
Windows Script Host
---------------------------
Сценарий: C:\Documents and Settings\Admin\Рабочий стол\Документы\vbs\14.vbs
Строка: 2
Символ: 5
Ошибка: Требуется объект: 'objFSO'
Код: 800A01A8
Источник: Ошибка выполнения Microsoft VBScript
---------------------------
ОК
---------------------------
O L E G, код, приведённый в #4 (http://forum.oszone.net/post-1916632.html#post1916632), не самодостаточный (и, увы, к тому же, содержит грубое упущение; приведённая ошибка связана не с ней). Он просто иллюстрирует, как можно:
Указать сразу не сколько файлов, с которых мне нужно снять аттрибут »
Я полагал, что Вы уже освоились в WSH.
Вот пример полного кода:
Option Explicit
Const ReadOnly = &H01
Dim strFile
With WScript.CreateObject("Scripting.FileSystemObject")
For Each strFile In Array("C:\qwerty.txt", "c:\Temp\01.txt", "d:\02\02.log")
If .FileExists(strFile) Then
With .GetFile(strFile)
WScript.Echo strFile
.Attributes = .Attributes And Not ReadOnly
End With
End If
Next
End With
WScript.Quit 0
Iska, Освоил НО, по верхностно. Благодарен
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.