Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Использование VbScript для администратора Windows


Выпуск #10

"Vbs, whs, js скрипты для администратора"

30 октября 2008

Доброе время суток подписчик!

Прошу прощения за перерыв в рассылках. Сегодшняя рассылка будет не совсем обычная. У меня есть приятель Николай, который работает в страховой компании. В его работе часто приходится пользоваться цифровым фотоаппаратом. Файлов получается много и они занимают много места на диска. Николай заметил, что если открыть файл в программе Paint и сохранить, то размер файла становится на 30-50% меньше, без видимой потери качества (во всяком случае для работы эти файлы можно использовать). Вот он попросил меня помочь.

СКРИПТ ДЛЯ СЖАТИЯ ГРАФИЧЕСКИХ ФАЙЛОВ

ИСПОЛЬЗУЯ MS PAINT

Николай сказал, что используемые файлы имеют расширение jpg. Я сделал скрипт, который обрабатывал файлы jpg в текущем каталоге. Алгоритм работы скрипта:

  1. Получаем список файлов в текущем каталоге.
  2. Обрабатываем файлы, которые имеют расширение jpg:
    1. Открываем файл в программе MS Paint.
    2. Сохраняем файл (команда с клавиатуры Ctrl+S).
    3. Закрываем программу MS Paint (ALT+F4).

Вот собственно говоря сам скриптик:

'==========================================  Начало файла 
'Имя: ObrabotJpg.vbs 
'Язык: VBScript 
'Описание: Сжатие файлов jpg посредством программы MS Paint в текущей папке
'========================================================== 

Dim objShell

'Создаем объект Shell
Set objShell = WScript.CreateObject ("WScript.Shell")
Dim objFSO, objFile, objDir

Set objFSO = CreateObject("Scripting.FileSystemObject")
'Создаем объект Folder - для обработки папок
Set objDir = objFSO.GetFolder(objShell.CurrentDirectory)
'Обрабатываем файлы
For Each objFile In objDir.Files
    'У файла расширение jpg?
    If lcase(Right(objFile.Name,3))= "jpg" then
       'Если да, то открываем его с помощью программы MS Paint
       objShell.Run "mspaint " & objFile.Name
       'Задержка 1 секунда
       WScript.Sleep 1000 
       'Команда сохранения (на клавиатуре надо нажать Ctrl+s)
       objShell.SendKeys "^s"
       'Задержка 2 секунды (на всякий случай взял с запасом - чтобы было время сохраниться)
       WScript.Sleep 2000 
       'Закрываем программу MS Paint            
       objShell.SendKeys "%{F4}"
    End If 
Next 
'Правила хорошего тона - уничтожение используемых объектов
Set objShell = Nothing
Set objFSO   = Nothing 
Set objDir   = Nothing
'Окончание обработки файлов
WScript.Echo "Finish!!!"
'==========================================  Конец файла       

Я буду очень рад, если мой скрипт кому-то окажет помощь. Пишите письма на e-mail , который указан внизу письма, буду рад оказать свою помощь.

Со мной можносвязаться по e-mail - novopashinwm@mail.ru

Copyright 2008 Новопашин Владимир. Все права защищены.


В избранное