![]() |
![]() |
Bokul |
![]() ![]()
Сообщение
#1
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 117 Пол: Мужской Реальное имя: Богдан Репутация: ![]() ![]() ![]() |
Опишу, что мне надо:
надо, что бы при нажатию на комбинацию клавиш моя прога, которая раньше сидела в трее (можна даже без трея, просто чтобы она могла среагировать на нажатия клавиш. Вроде хук для этого надо ставить...), могла проанализировать код поточной Html страницы в браузере( Internet Explorer), вытянуть нужные ссылки, и скинуть в буфер обмена, реализованный в предыдущей теме . Трей и хуки можно оставить на потом, а сейчас же хотелося бы разобраться с браузером. Основная сложность это узнать Html. Я знаю, что все просматриваемое в браузерах сохраняется на винд, но определить, где он сохраняет все эти данные невозможно, так как Internet Explorer постоянно генерирует новые папки в Temporary Internet Files - система безопасности. Честно говоря, я просто не знаю куда тыкаться и что для этого надо знать. Может меня спасет WinApi? Покажите, пожалуйста, мне путь. Сообщение отредактировано: Bokul - 18.09.2006 7:41 -------------------- Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее. |
![]() ![]() |
Bokul |
![]() ![]()
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 117 Пол: Мужской Реальное имя: Богдан Репутация: ![]() ![]() ![]() |
Вот нашел в Drkb тему "Как добавить кнопку в панель инструментов IE?", подумал может это будет лучше чем HotKey, а может можна сделать то и то. Сейчас питаюсь перевести пример на Fpc.
Вот сам пример: Цитата 1. ButtonText = Всплывающая подсказка к кнопке 2. MenuText = Текст, который будет использован для пункта в меню "Сервис" 3. MenuStatusbar = *Ignore* 4. CLSID = Ваш уникальный classID. Для создания нового CLSID (для каждой кнопки) можно использовать GUIDTOSTRING. 5. Default Visible := Показать ей. 6. Exec := Путь к Вашей программе. 7. Hoticon := иконка из shell32.dll когда мышка находится над кнопкой 8. Icon := иконка из shell32.dll Код 1 -------------------------------------------------------------------- procedure CreateExplorerButton; const TagID = '\{10954C80-4F0F-11d3-B17C-00C0DFE39736}\'; var Reg: TRegistry; ProgramPath: string; RegKeyPath: string; begin ProgramPath := 'c:\folder\exename.exe'; Reg := TRegistry.Create; try with Reg do begin RootKey := HKEY_LOCAL_MACHINE; RegKeyPath := 'Software\Microsoft\Internet Explorer\Extensions'; OpenKey(RegKeyPath + TagID, True); 2 -------------------------------------------------------------------- WriteString('ButtonText', 'Your program Button text'); WriteString('MenuText', 'Your program Menu text'); WriteString('MenuStatusBar', 'Run Script'); WriteString('ClSid', '{1FBA04EE-3024-11d2-8F1F-0000F87ABD16}'); WriteString('Default Visible', 'Yes'); WriteString('Exec', ProgramPath); WriteString('HotIcon', ',4'); WriteString('Icon', ',4'); end 3------------------------------------------------------------ finally Reg.CloseKey; Reg.Free; end; end; Как я понимаю в первой части кода проходит открытие ключа. Вот замена для Fpc: Код Var x:hWnd; begin RegOpenKey(HKEY_LOCAL_MACHINE,'Software\Microsoft\Internet Explorer\Extensions\{10954C80-4F0F-11d3-B17C-00C0DFE39736}\', x); Не уверен в третьем параметре... Во второй части мы модифицируем этот ключ с помощю TRegistry.WriteString, в WinApi этой функции, наверное, отвечает REGSETVALUE...? Аналог Код WriteString('ButtonText', 'Your program Button text'); для Fpc: Код RegSetValue(HKEY_LOCAL_MACHINE,'Software\Microsoft\Internet Explorer\Extensions\{10954C80-4F0F-11d3-B17C-00C0DFE39736}\','ButtonText',REG_SZ, 'Your program Button text'); Ну и закрываем ключ Код RegCloseKey(x); Правильно? Сообщение отредактировано: Bokul - 17.09.2006 22:06 -------------------- Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее. |
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 23:03 |