Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] как можно организовать скрытый поиск фото по модели камеры?

Ответить
Настройки темы
Любой язык - [решено] как можно организовать скрытый поиск фото по модели камеры?

Аватара для UmbrellaMegaHack

Новый участник


Сообщения: 6
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


как можно организовать скрытый поиск фото по модели камеры?

Отправлено: 15:20, 06-11-2010

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Например, так:
читать дальше »
(для одной папки!, без вложенных)
Код: Выделить весь код
Option Explicit

Const ForWriting = 2

Dim objShell
Dim objFolder
Dim objFolderItem

Dim objFSO
Dim objTS


Set objShell = WScript.CreateObject("Shell.Application")
Set objFolder = objShell.NameSpace("C:\My Pictures")

If Not objFolder Is Nothing Then
    Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
    Set objTS = objFSO.OpenTextFile("c:\ListOfFiles.txt", ForWriting, True)
    
    For Each objFolderItem In objFolder.Items
        If objFolder.GetDetailsOf(objFolderItem, 24) = "Canon PowerShot S2 IS" Then
            objTS.WriteLine objFolderItem.Path
        End If
    Next
    
    objTS.Close
    
    Set objTS         = Nothing
    Set objFSO        = Nothing
    
    Set objFolderItem = Nothing
    Set objFolder     = Nothing
End If

Set objShell = Nothing

WScript.Quit 0

Последний раз редактировалось Iska, 09-01-2011 в 18:57. Причина: Исправлена очистка объектной переменной «objShell»

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:48, 06-11-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 426
Благодарности: 108

Профиль | Отправить PM | Цитировать



Iska, начинаю потихоньку уважать vbs, (хотя все равно еще не готов повернуться к нему лицом) не знал, что винда сама может анализировать EXIF/IPTC...

Цитата Iska:
"Canon PowerShot S2 IS" »
- помню была такая у моего друга, очень хорошая машинка!


из батника я пользую "ExifTool" (Phil Harvey)

пример использования с подкаталогами:
exiftool.exe -fast -S -r -Model *.\ - получаете просто список файлов и соответсвующую модель, если та указана, нужное занчение копируете в батник:
Код: Выделить весь код
@Echo off
setlocal EnableExtensions
Set Camera=DiMAGE Z2
Set Tag=.&Set File=.
for /f "tokens=1,* delims=:" %%A in ('exiftool.exe -fast -S -r -Model .\') do call :GetModel "%%A" "%%B"
exit
:GetModel
set Tag=%~1
if "%Tag:~0,9%"=="======== " set File=%Tag:~9%
if "%Tag%"=="Model" if %2==" %Camera%" Echo %File:/=\%
exit /b

-------
Как сказало Дерево Дровосеку: "я - пень".

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:59, 08-11-2010 | #3


Аватара для UmbrellaMegaHack

Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Iska:
Код:
Option Explicit
Const ForWriting = 2
Dim objShell
Dim objFolder
Dim objFolderItem
Dim objFSO
Dim objTS
Set objShell = WScript.CreateObject("Shell.Application")
Set objFolder = objShell.NameSpace("C:\My Pictures")
If Not objFolder Is Nothing Then
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objTS = objFSO.OpenTextFile("c:\ListOfFiles.txt", ForWriting, True)
For Each objFolderItem In objFolder.Items
If objFolder.GetDetailsOf(objFolderItem, 24) = "Canon PowerShot S2 IS" Then
objTS.WriteLine objFolderItem.Path
End If
Next
objTS.Close
Set objTS = Nothing
Set objFSO = Nothing
Set objFolderItem = Nothing
Set objFolder = Nothing
End If
Set objShell = WScript.CreateObject("Shell.Application") »


можно пример скрипта с подкатологами пожалуйста

Отправлено: 16:47, 03-01-2011 | #4


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


UmbrellaMegaHack, примерно так:
читать дальше »
Код: Выделить весь код
Option Explicit

Const ForWriting = 2

Dim objShell
Dim objFolder
Dim objFolderItem

Dim objFSO
Dim objTS


Set objShell  = WScript.CreateObject("Shell.Application")
Set objFolder = objShell.NameSpace("C:\My Pictures")

If Not objFolder Is Nothing Then
    Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
    Set objTS  = objFSO.OpenTextFile("c:\ListOfFiles.txt", ForWriting, True)
    
    ScanSubFolders objFolder
    
    objTS.Close
    
    Set objTS     = Nothing
    Set objFSO    = Nothing
    
    Set objFolder = Nothing
End If

Set objShell = Nothing

WScript.Quit 0
'=======================================================

'=======================================================
Sub ScanSubFolders(objFolder)
    Dim objSubFolder
    Dim objFolderItem
    
    WScript.Echo "[" & objFolder.Self.Path & "]"
    
    For Each objFolderItem In objFolder.Items
        If objFolderItem.IsFolder Then
            Set objSubFolder = objFolderItem.GetFolder
            
            If Not objSubFolder Is Nothing Then
                ScanSubFolders objSubFolder
            End If
        Else
            If objFolder.GetDetailsOf(objFolderItem, 24) = "Canon PowerShot S2 IS" Then
                objTS.WriteLine objFolderItem.Path
            End If
        End If
    Next
End Sub
'=======================================================

P.S. В предыдущем скрипте исправлена очистка объектной переменной «objShell».
читать дальше »
С:
Код: Выделить весь код
Set objShell = WScript.CreateObject("Shell.Application")
на:
Код: Выделить весь код
Set objShell = Nothing

Отправлено: 19:00, 09-01-2011 | #5


(*.*)


Сообщения: 36491
Благодарности: 6675

Профиль | Сайт | Отправить PM | Цитировать


А почему поиск должен быть скрытый? В Windows 7 все на виду



Ну и даже в ХР можно поставить Desktop Search.

Сорри за оффтоп

-------
Канал Windows 11, etc | Чат @winsiders


Отправлено: 03:58, 10-01-2011 | #6


Аватара для UmbrellaMegaHack

Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Меня интересует скрытая автоматика)

Отправлено: 14:49, 11-01-2011 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] как можно организовать скрытый поиск фото по модели камеры?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Как организовать поиск нужного диска и запуск с него приложения? Nun-Nun Скриптовые языки администрирования Windows 16 28-05-2009 22:12
нужен драйвер для фото (веб) камеры Necessary Поиск драйверов, прошивок и руководств 9 18-07-2008 17:06
Проблемы копирования фото с цифровой камеры Orfan Microsoft Windows 2000/XP 1 10-03-2006 14:51
Как организовать поиск по сайту Vampire Вебмастеру 4 30-01-2004 01:52
Как лучше организовать поиск по контексту ? Ustas2002 Вебмастеру 1 10-09-2002 21:34




 
Переход