Хостинг картинок yapx.ru
Добро пожаловать!

Вернуться   Интернет-конференция > компьютерный форум > Операционные системы Microsoft > Руководства по microsoft windows
Войти через OpenID

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.03.2015, 22:22   #1
Eternity
Администратор
 
Аватар для Eternity
 
Регистрация: 21.11.2014
Сообщений: 2,965
Сказал(а) спасибо: 12
Поблагодарили 86 раз(а) в 80 сообщениях
Настроение: Daring
Репутация: 107
По умолчанию Скрипт: Удаление jpeg файлов по разрешению

если
в папке wallpepers jpeg файлы с разным разрешениями, нужно удалить все файлы у которых разрешение ниже 1680 x 1050

то используем скрипт:

Код:
' для явного объявления переменных (?)
Option Explicit
' задаем переменные
Dim strPath2Wallpapers
Dim lngHRes
Dim lngVRes

Dim objFile
Dim objImageFile

'значение переменных
strPath2Wallpapers = "C:\Wallpapers"
lngHRes = 1680
lngVRes = 1050

'Создаем объект FileSystemObject
With WScript.CreateObject("Scripting.FileSystemObject")
' Если папка есть, то получаем доступ к библиотеки wia для файлов изображений и вводим в переменную
If .FolderExists(strPath2Wallpapers) Then
Set objImageFile = WScript.CreateObject("WIA.ImageFile")
' для каждого файла в нужном каталоге (и свойств файла) 
For Each objFile In .GetFolder(strPath2Wallpapers).Files
' выбирает все файлы, преобразует их имена без верхнего регистра, смотрит их расширения
Select Case LCase(.GetExtensionName(objFile.Name))
' выбирает jpeg файлы
Case "jpeg", "jpg", "jpe"
With objImageFile
On Error Resume Next

.LoadFile objFile.Path
'хз 
If Err.Number = 0 Then
On Error Goto 0
'если разрешение меньше чем нужно, то вывести имя файла на экран и удалить его 
If .Width < lngHRes Or .Height < lngVRes Then
WScript.Echo CStr(.Width) & "x" & CStr(.Height), vbTab, objFile.Name
objFile.Delete True
End If
Else
Err.Clear
On Error Goto 0
' если с файлом чтото вывести сообщение об ошибки 
WScript.Echo "Can't load file [" & objFile.Name & "]"
End If
End With
' в противном случае ничего с файлом не делать
Case Else
' Nothing to do
End Select
Next

Set objImageFile = Nothing
Else
WScript.Echo "Folder [" & strPath2Wallpapers & "] not found"
End If
End With

WScript.Quit 0
Eternity вне форума   Ответить с цитированием Вверх
Старый 03.04.2015, 15:49   #2
men
Форумчанин
 
Аватар для men
 
Регистрация: 26.11.2014
Сообщений: 789
Сказал(а) спасибо: 16
Поблагодарили 59 раз(а) в 59 сообщениях
Репутация: 69
По умолчанию Re: Скрипт: Удаление jpeg файлов по разрешению

Удобно и нет проблем с заморочкой, всё легко
men вне форума   Ответить с цитированием Вверх
Ответ


Ваши права в разделе
Вы можете создавать новые темы
Вы можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 12:24. Часовой пояс GMT +3.

 
 
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios
Рейтинг@Mail.ru