Можно, но какие? В принципе можно, но долго это будет выполняться? А я вот ещё хотел спросить: а можно наверно посмотреть список запущенных процессов и найти там QIP и посмотреть адрес её?
2GanWorld уточню, API-функции поиска FindFirstFile и тд гоу то MSDN По поводу списка процессов, тоже можно ... смотри на мсдн ToolHelp-функции.
используй regshot до установки квипа и после установки , чтоб определить куда он свои ключи прописал в реестр, а он по-любому если установлен то в какой-то ветке реестра прописывает path до себя , когда определишь, то исполдуьзуй потома ... using Microsoft.Win32; ... класс Registry и пошло и поехало ...
2 12usver12 блин, и нафига всё делать через ж*пу? А если квип уже установлен, способ идёт лесом? 2 At0m2k ога, и вместо строки 'qip' мы храним несколько немаленьких путей реестра для каждой версии. И для каждой новой версии надо выпускать новую прогу, с новой строкой или патч. А если они имя переменной изменят? тут можно ещё много если придумать. Если наша прога должна работать со сторонним, не зависящим от нас софтом, то лучше неиспользовать жостко зашитые правила.
Если искать квип в процессах - это велосипед, потому что работать будет только при запущенном QIP, можно использовать поиск файла "_m_away.txt"(он есть только в QIP) и по нему найти папку QIP, искать хэндл окна тоже не катит, только при запущенном QIP работать будет, я искал по файлу _m_away.txt, но сначало проверял наличие часто используемых путей типо и т.д.
Насчет поиска: Ну незнаю, юзер мог куда угодно закинуть, и если на компе куча всего, то программа будет 100 лет искать. Насчет реестра: она только в Uninstal пишет. Но QIP мог быть не проинсталлирован и тогда записи не бует. Понимаю. Но для мой задачи в принципе не критично. Так что решил остановиться на процессах. Хотя можно и все пункты по порядочку прогнать пути -> реестр -> процессы -> поиск
Незнаю мне кажется он уже 3 года зовётся QIP2005 а версия в пути не фигурирует. Ток есль при Infium будет зваться по другому...
А если например у юзера Qip в разных папочках неустановленный лежит разных версий. Чё гадать каким он пользуется? Я лично представляю сколько прога будет искать у меня на компе квип, особенно если он будет положен на рабочем столе в подпапке....... Наверно легче шоб прога запрашивала у юзера путь к квипу.
если не инсталлирован - то ХРЕН! (ну, в смысле, только поиск...) а если инсталлирован, то 1 вар-т: идём в HKLM (или HKCU)/.../Uninstall/QIP2005 (как сказал At0m2k) 2 вар-т: если говорите, что имена разделов могут быть разными в разных версиях, то перебираем все подразделы HKLM (или HKCU)/.../Uninstall/ пока не встретим в одном из них слово QIP (с какими-нть ограничениями, чтобы не спалить, например, чтон-ть типа FantastiqIP) Greetz.
Помоему самый действующий вариант - это перебор дисков и поиск папки Qip с возможными корректировками. Написал я троян, который осуществляет поиск папки Qip по всем дискам, такой способ находит их компактную версию Qip, если поставиили на флешку, обращение к реестру не может быть таким эффективным, тем более поиск флеш версии Qip'а.
неа в реестре HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache ищем значение Quiet Internet Pager работает даже если квип был просто распакован/скопирован