Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];

Вниз

Флешка   Найти похожие ветки 

 
Denis__ ©   (2008-01-04 19:24) [0]

Доброго времени суток всем.
Не подскажите, как узнать, что человек воткнул флешку? Может приходит сообщение какое-то, или ещё что?


 
Джо ©   (2008-01-04 19:25) [1]

Сообщение WM_DEVICECHANGE


 
koha overload   (2008-01-04 19:28) [2]


> Джо ©   (04.01.08 19:25) [1]
> Сообщение WM_DEVICECHANGE


а кот первый его получит?


 
Джо ©   (2008-01-04 19:33) [3]

> [2] koha overload   (04.01.08 19:28)
>
> > Джо ©   (04.01.08 19:25) [1]
> > Сообщение WM_DEVICECHANGE
>
>
> а кот первый его получит?

Нет, кот — вряд ли.


 
engine ©   (2008-01-04 19:34) [4]

> [2] koha overload   (04.01.08 19:28)

так ты куда флешку решил воткнуть-то?


 
{RASkov} ©   (2008-01-04 19:39) [5]

> [4] engine ©   (04.01.08 19:34)

Если я правильно подумал о чем вообще разговор - то таки-да... кот всех известит о "втыклянии" флэшки
:)


 
Denis__ ©   (2008-01-04 19:46) [6]


> а кот первый его получит?

Это не важно:) Спасибо, Джо!

А вот правильно ли я понял, что Message.WParam содержит номер этой самой флешки? Т.е. Узнать букву можно так
chr(ord("a")+Message.WParam)
?
Или просто у меня совпало : Message.WParam = 7, буква флехи - H?


 
koha overload   (2008-01-04 19:47) [7]


> engine ©   (04.01.08 19:34) [4]
> > [2] koha overload   (04.01.08 19:28)так ты куда флешку
> решил воткнуть-то?


Я не куда не собирался, может он знает - [Denis__ ©   (04.01.08 19:24)]

> как узнать, что человек воткнул флешку?
- если человек воткнул не туда куда надо, то вопросик то в самую тему, а кот первый его получит? Хозяин хук в левое ухо или компютер?


 
Denis__ ©   (2008-01-04 19:49) [8]


> если человек воткнул не туда куда надо

он(она точнее) будет втыкать туда, куда надо.:)


 
Johnmen ©   (2008-01-04 19:49) [9]


> Не подскажите, как узнать, что человек воткнул флешку?

Сообщение WM_ISTHEHUMAN.


 
{RASkov} ©   (2008-01-04 19:50) [10]

> [6] Denis__ ©   (04.01.08 19:46)
> А вот правильно ли я понял, что Message.WParam содержит
> номер этой самой флешки?

Нет... не правильно.

Event = (UINT) wParam;
dwData = (DWORD) lParam;

Parameters

Event

Event type. This parameter can be one of the following values:
Value Meaning
DBT_CONFIGCHANGECANCELED  A request to change the current configuration (dock or undock) has been canceled.
DBT_CONFIGCHANGED The current configuration has changed, due to a dock or undock.
DBT_DEVICEARRIVAL A device has been inserted and is now available.
DBT_DEVICEQUERYREMOVE Permission is requested to remove a device. Any application can deny this request and cancel the removal.
DBT_DEVICEQUERYREMOVEFAILED A request to remove a device has been canceled.
DBT_DEVICEREMOVECOMPLETE A device has been removed.
DBT_DEVICEREMOVEPENDING A device is about to be removed. Cannot be denied.
DBT_DEVICETYPESPECIFIC A device-specific event has occurred.
DBT_QUERYCHANGECONFIG  Permission is requested to change the current configuration (dock or undock).
DBT_USERDEFINED  The meaning of this message is user-defined.


dwData
Address of a structure that contains event-specific data. Its meaning depends on the given event.


 
Denis__ ©   (2008-01-04 19:55) [11]


> Нет... не правильно.

А как тогда узнать букву?


 
koha overload   (2008-01-04 20:02) [12]

Вот чего еще нарыл в googl
первое про сидеромы
http://www.swissdelphicenter.ch/torry/showcode.php?id=372
второе про usb flash
http://delphimaster.net/view/11-1160629902/
а это запрос:
http://www.google.com/search?client=opera&rls=ru&q=WM_DEVICECHANGE&sourceid=opera&ie=utf-8&oe=utf-8


 
Denis__ ©   (2008-01-04 20:07) [13]


> http://delphimaster.net/view/11-1160629902/

Утанул в коде. Мне б только букву получить:(


 
koha overload   (2008-01-04 20:17) [14]

Я так предпочел другой алгоритм:
мониторим за изменением количества дисков,  как только изменилось проверяем, является ли новый диск съемным, затем является ли он флэш-устройством. а затем уже все остальное....
работает приемлемо и время выполнения тоже преемлемое, правдо как то все наоборот, но работает.


 
{RASkov} ©   (2008-01-04 20:36) [15]

> [13] Denis__ ©   (04.01.08 20:07)
> Утанул в коде. Мне б только букву получить:(

Ну дык про сидиром (первую) глянь
замени
DBTF_Media = $0001;
на
DBTF_Remove = $0000;
и сответственно в коде ....


 
Anatoly Podgoretsky ©   (2008-01-05 13:25) [16]

> koha overload  (04.01.2008 19:28:02)  [2]

Как повезет, но чаще раньше мышка.


 
Denis__ ©   (2008-01-06 12:02) [17]

Спасибо  Джо ©, koha overload, {RASkov} © очень помогли (а точнее не помогли, а дали решение)


> koha overload   (04.01.08 20:17) [14]

До этого алгоритма я тоже додумался. Но [15] будет лучше. Или есть какие-то подводные камни?



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

Форум: "Прочее";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.042 c
2-1200556620
npr2
2008-01-17 10:57
2008.02.10
delphi installshield и потоки


2-1200234821
cr@nk
2008-01-13 17:33
2008.02.10
Консольное приложение (пара вопросов)


2-1200312837
Washington
2008-01-14 15:13
2008.02.10
Прорисовка PopupMenu


2-1200159348
istok
2008-01-12 20:35
2008.02.10
показать сообщение не из своей программы


15-1199920272
ArtemESC
2008-01-10 02:11
2008.02.10
Посоветуйте что-нибудь играбельное...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский