ну в моем случае запускаю конкретно эксплорер. в дефолтном код был бы:
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.
|