Показать сообщение отдельно
Старый 19.09.2012, 15:49   #3
Местный
 
Аватар для SeregaZ
 
Регистрация: 16.08.2009
Сообщений: 1,224
Сказал Спасибо: 4
Имеет 229 спасибок в 182 сообщенях
SeregaZ пока неопределено
По умолчанию

ну в моем случае запускаю конкретно эксплорер. в дефолтном код был бы:
RunProgram("http://blablabla.ru")
но даже если эксплорер дефолтный, то он дефолтный как 64 битный эксплорер. между 32 и 64 эксплорерами как бы нет битвы за дефолтность. 32 можно запустить только насильно тыкнув ярлык в пуске. поэтому надо найти ветку реестра, где это можно прочитать, то есть путь именно до 32 битного в 64 битной системе.

есть мысля сначала читать путь до программ файлс, брать оттуда букву диска, менять программ файлс на программ файлс (86), проверять наличие файла эксплорер.ехе, если такой файл по такому пути есть - значит вся виндовс 64 бита, если файла нет, значит виндовс 32 и значит путь стандартный. но это все крайне ненадежно. например антивирус грохнул этот эксплорер, когда 32 битная версия подцепила заразы. в результате файла нет на месте, моя программа не найдет там файл, посчитает что система 32 бита, запустит по стандартному пути... а он то сцуко 64. и работать не будет. или была у человка 64 винда, он удалил, программ файлс как системная папка заменилась на новую, а папка программ файлс(86) продолжила существовать на новой 32 битной винде. мой код увидет этот файл, посчитает что система 64 битная, ныкнется запускать, а тот ехе файл эксплорера пошлет его нахер, так как система то фактически будет уже совсем другая, а он принадлежит старой убитой. поэтому хотелось бы ветку реестра.
__________________
хочу картинку в подпись!

Последний раз редактировалось SeregaZ, 19.09.2012 в 15:53.
SeregaZ вне форума   Ответить с цитированием