-
помогите с VBS
Извеняюсь, может вопрос не в этот раздел....
Есть скрипт (скачан с какого то форума), рабочий. Он значит, мониторит определённую папку, и как только в неё попадает doc или xls он отправляет это дело на печать на принтер по умалчанию и удаляет документ. Если попадают файлы с другим расширением, он не делает ничего...
Так вот, надо добавит, что бы распечатывались также и jpg. Помогите неучу
Option Explicit
Dim strTargetFolder
Dim strComputer
Dim objSWbemServicesEx
Dim objSWbemEventSource
Dim objSWbemObjectEx_Event
Dim objSWbemObjectEx_CIM_DataFile
strTargetFolder = "c:\TecT"
strComputer = "."
Set objSWbemServicesEx = GetObject("WinMgmts:\\" & strComputer & "\Root\CIMV2")
Set objSWbemEventSource = objSWbemServicesEx.ExecNotificationQuery( _
"SELECT * FROM __InstanceCreationEvent WITHIN 5 WHERE " & _
"TargetInstance ISA 'CIM_DirectoryContainsFile' AND " & _
"TargetInstance.GroupComponent = 'Win32_Directory.Name=""" & Replace(strTargetFolder, "\", "\\\\") & """'")
WScript.Echo "Monitor files creation and Print documents in [" & strTargetFolder & "]..."
Do
Set objSWbemObjectEx_Event = objSWbemEventSource.NextEvent
Set objSWbemObjectEx_CIM_DataFile = objSWbemServicesEx.Get(objSWbemObjectEx_Event.Targ etInstance.PartComponent)
WScript.Echo Now() & " | | New file: [" & objSWbemObjectEx_CIM_DataFile.Name & "]"
Select Case UCase(objSWbemObjectEx_CIM_DataFile.Extension)
Case "DOC"
PrintByWord objSWbemObjectEx_CIM_DataFile.Name
Case "XLS"
PrintByExcel objSWbemObjectEx_CIM_DataFile.Name
Case Else
' Nothing to do
End Select
WScript.Echo Now() & " | | Delete file: [" & objSWbemObjectEx_CIM_DataFile.Name & "]"
objSWbemObjectEx_CIM_DataFile.Delete
Loop
WScript.Quit 0
'================================================= ============================
'================================================= ============================
Sub PrintByWord(strFileName)
Const wdDoNotSaveChanges = 0
Dim objWord
Dim objDoc
Set objWord = WScript.CreateObject("Word.Application")
WScript.Echo Now() & " | | Print file: [" & strFileName & "]"
With objWord
Set objDoc = .Documents.Open(strFileName, False, True, False)
objDoc.PrintOut True
Do
WScript.Sleep 500
Loop Until .BackgroundPrintingStatus = 0
Set objDoc = Nothing
.Quit wdDoNotSaveChanges
End With
Set objWord = Nothing
End Sub
'================================================= ============================
'================================================= ============================
Sub PrintByExcel(strFileName)
Dim objExcel
Dim objWorkbook
Set objExcel = WScript.CreateObject("Excel.Application")
WScript.Echo Now() & " | | Print file: [" & strFileName & "]"
With objExcel
Set objWorkbook = .Workbooks.Open(strFileName, 0, True)
objWorkbook.PrintOut
objWorkbook.Saved = True
Set objWorkbook = Nothing
.Quit
End With
Set objExcel = Nothing
End Sub
'================================================= ============================
-
-
Почему бы не погуглить более готовые решения? Вот я сразу наткнулся: http://www.labnol.org/internet/print...-phones/17827/ Надо только выпилить оттуда то, что касается чтения конфигов Дропбокса.
-
Ваши права
- Вы не можете создавать новые темы
- Вы не можете отвечать в темах
- Вы не можете прикреплять вложения
- Вы не можете редактировать свои сообщения
-
Правила форума