[Редактировать]
Нет необходимости использовать отражение.Вы можете добавить ссылку на вашу программу прямо в загрузчике и запустить ее.Сделал сообщение в блоге с кодом об этом в Tech and Me .
Вы можете включить обе версии в свое развертывание, но назвать их по-разному.Затем попросите приложение загрузчика проверить, находитесь ли вы в 32-битной или 64-битной системе, скопируйте правильную dll (например, thirdparty64.dll -> thirdparty.dll), с которой связана ваша настоящая программа, а затем, например, вызовите вашу программу из загрузчикаAssembly.Load
и используйте рефлексию для запуска вашего основного метода.
Более простой метод - это скомпилировать ваше приложение для запуска под x86, гарантируя, что оно всегда будет работать в 32-битном режиме.Если вы не полагаетесь на какое-либо конкретное приложение, устанавливаемое на компьютере в 32/64-битных версиях, это может быть лучшим выбором.