Batya

|
Posted: Thu Aug 24, 2006 17:16 Post subject: |
|
|
Значит так...
Используем Script Content Plugin.
Принцип работы - создаем файл-список, в котором сохраняем помечаемые файлы-папки. Настройте во всех скриптах один путь к файлу-списку.
В папке плагина создаем FilesInList.vbs:
Code: | Dim FSO, FilesList, oTextFile, AllText
FilesList = "D:\TotalCmd\PlugIns\Wdx\ScriptContent\FilesList.txt"
Set FSO = CreateObject("Scripting.FileSystemObject")
content = 0
Set oTextFile = FSO.OpenTextFile(FilesList, 1)
AllText = oTextFile.ReadAll
If InStr(1, AllText, filename, 1) > 0 Then
content = 1
End If
oTextFile.Close
Set oTextFile = Nothing
Set FSO = Nothing |
Настраиваем инишник плагина:
Code: | [Script]
Section=Files In List
[Files In List]
Script=FilesInList.vbs
LongName=1
ParseDirs=1
|
Для добавления в файл-список используем vbs-скрипт:
Code: | '==============================================================================
' Добавление полного имени файла в файл-список
'
' В качестве параметра указать:
' %L
'==============================================================================
Option Explicit
Dim FilesList
'============= Задайте файл-список ============================================
FilesList = "D:\TotalCmd\PlugIns\Wdx\ScriptContent\FilesList.txt"
'==============================================================================
If WScript.Arguments.Count = 0 Then
MsgBox "Не указан параметр - %L", _
vbOKOnly + vbExclamation, _
"Копирование имени файла в файл-список"
WScript.Quit
End If
Dim FSO, oTextFile, AllText, OTF, FileName
Set FSO = CreateObject("Scripting.FileSystemObject")
Set OTF = FSO.OpenTextFile(WScript.Arguments(0), 1)
If FSO.FileExists(FilesList) Then
Set oTextFile = FSO.OpenTextFile(FilesList, 1)
AllText = oTextFile.ReadAll
oTextFile.Close
Else
AllText = ""
End If
Do While Not OTF.AtEndOfStream
FileName = OTF.ReadLine
If InStr(1, AllText, FileName, 1) = 0 Then
Set oTextFile = FSO.OpenTextFile(FilesList, 8, 2)
oTextFile.WriteLine FileName
oTextFile.Close
End If
Loop
OTF.Close
Set oTextFile = Nothing
Set OTF = Nothing
Set FSO = Nothing
WScript.Quit |
Для удаления из файла-списка:
Code: | '==============================================================================
' Удаление полного имени файла из файла-списка
'
' В качестве параметра указать:
' %L
'==============================================================================
Option Explicit
Dim FilesList
'============= Задайте файл-список ============================================
FilesList = "D:\TotalCmd\PlugIns\Wdx\ScriptContent\FilesList.txt"
'==============================================================================
If WScript.Arguments.Count = 0 Then
MsgBox "Не указан параметр - %L", _
vbOKOnly + vbExclamation, _
"Удаление имени файла из файла-списка"
WScript.Quit
End If
Dim FSO, oTextFile, AllText, OTF, FileName
Set FSO = CreateObject("Scripting.FileSystemObject")
Set OTF = FSO.OpenTextFile(WScript.Arguments(0), 1)
Set oTextFile = FSO.OpenTextFile(FilesList, 1)
AllText = oTextFile.ReadAll
oTextFile.Close
Do While Not OTF.AtEndOfStream
FileName = OTF.ReadLine
If InStr(1, AllText, FileName, 1) > 0 Then
Set oTextFile = FSO.OpenTextFile(FilesList, 2)
AllText = Replace(AllText, FileName, "", 1, -1, 1)
AllText = Replace(AllText, vbNewLine & vbNewLine, vbNewLine, 1, -1, 1)
oTextFile.Write AllText
oTextFile.Close
End If
Loop
OTF.Close
Set oTextFile = Nothing
Set OTF = Nothing
Set FSO = Nothing
WScript.Quit |
При настройке цвета указываем Script Content Plugin, колонка Result = 1. |
|