SHOW:
|
|
- or go back to the newest paste.
1 | 'Автоматическая печать знакомых системе файлов, появляющихся в определенной папке | |
2 | ||
3 | Set gFSO = CreateObject("Scripting.FileSystemObject") | |
4 | Set gShell = CreateObject("WScript.Shell") | |
5 | ||
6 | 'Папка, в которой скрипт ждет файлы. К ней есть доступ по сети на запись | |
7 | gWatchFolder = "G:\PrintME\" | |
8 | 'Основной цикл | |
9 | While true | |
10 | Set lFolder = gFSO.GetFolder(gWatchFolder) | |
11 | Set lFiles = lFolder.Files | |
12 | For Each lFile In lFiles | |
13 | PrintFile(gWatchFolder & lFile.Name) | |
14 | Next | |
15 | WScript.Sleep(1000) | |
16 | WEnd | |
17 | ||
18 | 'Функция печати конкретного файла | |
19 | Sub PrintFile(pFileName) | |
20 | 'Ждем некоторе время (а вдруг файл большой, ещё не записался) | |
21 | WScript.Sleep(10000) | |
22 | s = """c:\!bin\classExec.exe"" """ & pFileName & """ --action print" | |
23 | Call gShell.Run(s,0,true) | |
24 | - | 'Некоторые файлы могут печататься долго, поэтому методом вилки вылавливаем-с паузу после посылания задания на печать перед удалением исходника |
24 | + | 'Некоторые файлы могут печататься долго, поэтому методом вылавливаем-с его освобождение тупым повтором удаления |
25 | - | WScript.Sleep(30000) |
25 | + | While gFSO.FileExists(pFileName) |
26 | WScript.Sleep(5000) | |
27 | - | If gFSO.FileExists(pFileName) Then |
27 | + | |
28 | - | msgbox("Не удалось удалить файл " & pFileName & "! Фигня какая-то, перезапусти скрипт печати") |
28 | + | |
29 | - | WScript.Quit |
29 | + |