Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.05.24;
Скачать: CL | DM;

Вниз

Файловая система фотоаппарата   Найти похожие ветки 

 
angel095   (2008-05-04 11:11) [0]

Доброго времени суток!

Товарищи мастера, подскажите пожалуйста, как можно получить список файлов (с путями) на подключенном по USB фотоаппарате, для дальнейшего копирования этих фалов?

Твайн не подошел :( а путь найти не смог, помогите пожалуйста!!!


 
@!!ex ©   (2008-05-04 11:19) [1]

там FAT обычный, насколько я помню.


 
angel095   (2008-05-04 11:22) [2]


> там FAT обычный, насколько я помню.


Я вот подключаю сво Canon IXUS 850 IS он в моем компьютере отображается как Canon IXUS 850 IS соответственно... если проводником на него входить то все Ок, но как это сделать программно?


 
МистерТ   (2008-05-04 14:13) [3]

FindFirstFile/FindNextFile/FindClose


 
angel095   (2008-05-04 16:40) [4]


> FindFirstFile/FindNextFile/FindClose


А где искать то? ведь папки как таковой нету... проблемма именно достучаться до папки на камере


 
palva ©   (2008-05-04 17:29) [5]

А физические диски посмотреть? Тип диска - съемный.


 
APhoto   (2008-05-04 17:34) [6]

А один раз запомнить имя папки видимое из проводника очень сложно?


 
han_malign ©   (2008-05-04 17:36) [7]

Боюсь, что никакой файловой системы нет, а есть OLE-InProc сервер с реализацией IShellView который и отвечает за навигацию/просмотр по структуре данных в Windows Explorer.
В лучшем случае поддерживается IShellFolder и тогда есть шанс достучаться до структуры и конкретных данных найдя отвечающий за это модуль и выковырнув конкретную реализацию интерфейса(возможно импортирование ActiveX прокатит).

З.Ы. Давно это было - так что конкретики от меня не ждите - сами ковыряйтесь...


 
mahab ©   (2008-05-04 17:37) [8]

В инете есть исходники для отлова WM_DEVICECHANGE такие как DBT.pas со всеми остальными прибомбасами так вот оттуда можно получить имя присоединенного диска и далше делай что хочешь


 
angel095   (2008-05-04 22:39) [9]

APhoto
palva


Госпада :) Вы меня за юзера держите чтоли? :)
если бы был адрес папки (каковой просто нет) неужели я бы не сообразил использовать именно это имя?! Еще раз? фотоаппараты разные, есть которые монтируются как диски, а есть очень вероятно, как сказал уважаемый han_malign IShellView.


 
mahab ©   (2008-05-05 08:15) [10]


> angel095
> если бы был адрес папки (каковой просто нет)

Естественно нет. Если устройство определяется в системе как флеш носитель то оно получает арес и система отправляет всем пользовательским (а может и не только ) процессам сообщение WM_DEVICECHANGE которое имеет параметры из которых можно получить адрес устройства. Так вот все эти параметры описаны в DBT.pas !!!


 
han_malign ©   (2008-05-05 11:10) [11]


> Если устройство определяется в системе как флеш носитель то оно получает арес

- ключевое слово здесь если... Так вот, "если устройство определяется в системе как флеш носитель", то оно смонтируется как диск и и только тогда сообщение DBT_DEVICEARRIVAL нам чем то поможет... А при подключении USB устройства с проприетарным интерфейсом - DBT_DEVNODES_CHANGED, в которм кстати никакого "адреса устройства" не передается, уже ничем не поможет...(конечно, зная VID&PID устройства можно посредством SetupAPI пробежаться по новым устройствам, поднять interrupt/command/bulk-трубы, открыть DeviceIOControl - но нужно знать, что туда передавать и что оттуда получать)


 
mahab ©   (2008-05-05 11:40) [12]


>  с проприетарным интерфейсом

просьба пояснить для начинающих.


 
Жуков Олег   (2008-05-05 17:21) [13]


> angel095   (04.05.08 11:22) [2]
>
>


Кеноны не подключаются как съемный диск, в отличие от большинства других фотоаппаратов, и путей для стандартных функций копирования значит нет. Чтобы закачать изображения, нужно использовать интерфейс для работы с цифровой камерой.

http://msdn.microsoft.com/en-us/library/ms630368(VS.85).aspx

Но проще купить кардридер.


 
angel095   (2008-05-06 12:31) [14]

а почему windows explorer видит файлы на кеноне? неужели никак нельзя (попроще) получить пути к этим файлам? :(


 
Anatoly Podgoretsky ©   (2008-05-06 13:12) [15]

> angel095  (06.05.2008 12:31:14)  [14]

А оно Кенону нужно?


 
МистерТ   (2008-05-06 13:36) [16]

> angel095   (06.05.08 12:31) [14]
К примеру у меня старый Siemens M55 то же через эксплорер можно было просмотреть, для этого устанавливался специальный драйвер и надстройка. Сейчас такая же веСЧ с синезубом.
А некоторые mp3-плееры поступают еще интересней, то, что закачено через эксплорер не проигрывает и часто вообще не видит, а то, что закачано через спец.прожку - видит и играет, и даже в эксплорере видит и позволяет удалить.
Вопросы, как говорится, к производителю.


 
angel095   (2008-05-06 18:26) [17]

а можно как-нибудь через wia?
может подскажет кто, где почитать про нее (только не msdn) :)
правда мне кажется очень коряво выйдет и медленно...


 
Поп Гапон   (2008-05-06 18:43) [18]


> angel095   (06.05.08 12:31) [14]
>
> а почему windows explorer видит файлы на кеноне? неужели
> никак нельзя (попроще) получить пути к этим файлам? :(


Можно, если открывать файлы не по имени, а по PIDL
http://www.delphimaster.ru/articles/shell.html


 
angel095   (2008-05-06 20:44) [19]


> Можно, если открывать файлы не по имени, а по PIDL


а можно подробнее по сабжу, статью прочитал, но не очень понял :(


 
Жуков Олег   (2008-05-06 22:08) [20]

Еще у Canon есть  SDK, которым они охотно делятся, можно в этом направлении покопать.


 
Поп Гапон   (2008-05-07 00:37) [21]


> angel095   (06.05.08 20:44) [19]
>
>
> > Можно, если открывать файлы не по имени, а по PIDL
>
>
> а можно подробнее по сабжу, статью прочитал, но не очень
> понял :(


Да куда уж подробнее. запусти програмку ShellA и все увидишь.

Кстати, там ошибка. Расширения эксплорера поддерживают только apartmentthread модель.

Так что CoInitializeEx( nil, COINIT_MULTITHREADED ); заменить на CoInitializeEx(nil, COINIT_APARTMENTTHREADED);


 
angel095   (2008-05-07 17:56) [22]


> запусти програмку ShellA и все увидишь


папку то отловить получилось, но как быть с файлами? что-то никак :(



Страницы: 1 вся ветка

Текущий архив: 2009.05.24;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.012 c
3-1221025358
kaif
2008-09-10 09:42
2009.05.24
Обработка исключений ADO + MSSQL


15-1237486668
Andryk
2009-03-19 21:17
2009.05.24
Профессионализм не пропьешь :)))))


2-1239140033
istok
2009-04-08 01:33
2009.05.24
D2009: PAnsiChar to AnsiString


2-1239363580
dplz
2009-04-10 15:39
2009.05.24
Возможно ли в listbox зделать такое условие?


15-1237840569
alexander-rsh
2009-03-23 23:36
2009.05.24
Медиаплеер