Показать сообщение отдельно
Старый 26.01.2010, 22:46   #12  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,338 / 3558 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от tricky Посмотреть сообщение
т.к. не обязательно у пользователя ВинРар будет установлен в указанной директории. Есть ли возможность узнать, установлено ли приложение у пользователя и по какому пути оно располагается?
Можно сделать следующее:
1. Предположить что Winrar всегда будет стоять в Program Files. Путь к Program Files можно определить из переменной окружения %ProgramFiles% (cmd.exe echo %ProgramFiles%). Это поможет в случае установки Windows на разные диски.

2. В реестре (Windows 2008 Server, Vista) есть ветка HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe, у которой есть значение по умолчанию - полный путь к Exe-шнику и значение Path - соответственно - путь только к каталогу. Можно проанализировать эту ветку на предмет получения пути.
В общем случае - можно поискать в реестре по ключевому слову WinRAR чтобы понять где какая информация хранится.

Но в случае реестра есть маленькая ложка дегтя. Структура реестра в Vista / Server 2008 немного отличается от предыдущих версий Windows и есть риски "не найти в ожидаемом месте" информацию в реестре для разных ОС.
__________________
Возможно сделать все. Вопрос времени
За это сообщение автора поблагодарили: tricky (1).