как лучше реализовать перехват открытия URL в браузере из другого приложения,получить URL, и отфильтровать(тоесть пропустить к браузеру или нет)? вот что пишет мсдн How ShellExecute Determines Whether to Start a New Instance When ShellExecute looks through the registry, it looks for the shell\open subkey. If the shell\open\ddeexec key is defined, then a Dynamic Data Exchange (DDE) message with the specified application IExplore and the topic WWW_OpenURL is broadcast to all top-level windows on the desktop. The first application to respond to this message is the application that goes to the requested URL. If no application responds to this DDE message, then ShellExecute uses the information that is contained in the shell\open\command subkey to start the application. It then re-broadcasts the DDE message to go to the requested URL. в фаерфокс все просто, хук на запуск приложения и GetComanLine(), там вызов [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\HTTP\shell\Firefox\command] @="\"C:\\Program Files\\Mozilla Firefox\\firefox.exe\" -requestPending -osint -url \"%1\"" опера "C:\Program Files\Opera\opera.exe" "%1" иногда "C:\Program Files\Opera\opera.exe" вот %1 url в команд лайне. в ИЕ по другому iexplore.exe -nohome ну или чет типа, то есть "%1" самого урла нету. Вариант садить обработчик на http , и потом вызывать браузер не инетресно, тк перехватить WWW_OpenURL, когда запущен браузер, то просто новая вкладка, я интересно ее тоже перехватывать. Может я торможу, но простых и красивых вариантов не нашел.
Ну думаю МСДН пишет только о себе-подобных, посему советую юзать перехват функций send, WSASend sendto, WSASentTo и в них разбирать запросы. Но хз. может есть другой способ
универсально можно сделать только получение доменных имён (хуками днс функций). с [WSA](send/recv) будут проблемы с https.
нет, вы не поняли. мне надо перехватить именно ShellExecute/Ex (open, http://...); только когда саму функу перехватываеш, получаются глюки на разних системах, в висте там намутили с сообщениями, и там все очен не кошерно получается. Вот думал мож какой нить ком интерфес для рпс, или че нить есть, для обработки.