Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Узнать имя файла на котором кликнул

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Для начинающих] >> Узнать имя файла на котором кликнул
Имя
Сообщение << Старые топики   Новые топики >>
Узнать имя файла на котором кликнул - 2012-01-03 19:33:48.703333   
ashkalovps3

Сообщений: 9
Оценки: 0
Присоединился: 2012-01-03 19:26:10.916666
Как в windows узнать имя файла включая путь к нему, на котором был произведен клик в windows.
Нужно чтоб это имя, записывалось в файл например "appnamefile.txt".
Буду благодарен за помощь! :)
Post #: 1
RE: Узнать имя файла на котором кликнул - 2012-01-04 01:00:13.810000   
ashkalovps3

Сообщений: 9
Оценки: 0
Присоединился: 2012-01-03 19:26:10.916666
блин, что никто не подскажет???
Post #: 2
RE: Узнать имя файла на котором кликнул - 2012-01-04 01:46:13.133333   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
Тебе нужно поставить хук, проверять имя приложения и окна в котором сработал хук. У рабочего стола и директорий класс окна SysListView32.
Post #: 3
RE: Узнать имя файла на котором кликнул - 2012-01-04 01:52:47.790000   
ashkalovps3

Сообщений: 9
Оценки: 0
Присоединился: 2012-01-03 19:26:10.916666
извините, я новичок.. не умею делать я хук… помогите пожалуйста..
Post #: 4
RE: Узнать имя файла на котором кликнул - 2012-01-04 02:01:40.886666   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
нашел кое-что для прояснения
http://www.delphisources.ru/forum/showthread.php?t=11076
http://www.wasm.ru/forum/viewtopic.php?id=19037
Post #: 5
RE: Узнать имя файла на котором кликнул - 2012-01-04 03:51:39.346666   
ashkalovps3

Сообщений: 9
Оценки: 0
Присоединился: 2012-01-03 19:26:10.916666
так двойной клик я и сам отследить могу, а вот как имя файла узнать то???
Post #: 6
RE: Узнать имя файла на котором кликнул - 2012-01-04 13:35:43.680000   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
В пакете masm32 есть пример для работы с listview, контрол такой же SysListView32.
Для идентификации двойного клика часть кода:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .elseif [edi.NMHDR].code == NM_DBLCLK &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; INVOKE&nbsp;&nbsp;&nbsp;&nbsp; ReleaseCapture &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; call&nbsp;&nbsp;&nbsp;&nbsp; DisplayFileName
Здесь http://vsokovikov.narod.ru/New_MSDN_API/Controls/ctrl_notifications.htm можно посмотреть другие сообщения

"NM_CLICK Уведомляет родительское окно органа управления, что пользователь щелкнул левой кнопкой мыши в пределах органа управления. Уведомление NM_CLICK отправляется в форме сообщения WM_NOTIFY."


сл-но можно исправить NM_DBLCLK на NM_CLICK, получим такой код:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .elseif [edi.NMHDR].code == NM_CLICK &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; INVOKE&nbsp;&nbsp;&nbsp;&nbsp; ReleaseCapture &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; call&nbsp;&nbsp;&nbsp;&nbsp; DisplayFileName
Функция DisplayFileName:
;========================================================================= ; Display the file name PROCEDURE ;========================================================================= DisplayFileName proc LOCAL&nbsp;&nbsp;&nbsp; lvi:LV_ITEM LOCAL&nbsp;&nbsp;&nbsp; szBuff[256]:BYTE &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; INVOKE&nbsp;&nbsp;&nbsp;&nbsp; SendMessage, hList, LVM_GETNEXTITEM, -1, LVNI_FOCUSED &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; lvi.iItem, eax &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; lvi.iSubItem, 0 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; lvi.imask, LVIF_TEXT &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lea&nbsp;&nbsp;&nbsp;&nbsp; eax, szBuff &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; lvi.pszText, eax &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; lvi.cchTextMax, 256 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; INVOKE&nbsp;&nbsp;&nbsp;&nbsp; SendMessage, hList, LVM_GETITEM, 0, addr lvi &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; INVOKE&nbsp;&nbsp;&nbsp;&nbsp; MessageBox, NULL, addr szBuff, addr AppName, MB_OK &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ret DisplayFileName endp
Post #: 7
Страниц:  [1]
Все форумы >> [Для начинающих] >> Узнать имя файла на котором кликнул







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.