Я разрабатываю клиентское приложение, которое будет перечислять несколько приложений, которые я предлагаю. Пользователь выберет приложение и запустит его, затем приложение будет загружено и будет загружено в домен клиента клиента с помощью Assembly.Load. Вот фрагмент, где он загружается:Assembly.Load x86/x64/AnyCPU
var vAsm = Assembly.Load(client.GetBase());
var vEP = vAsm.EntryPoint;
var vSC = vAsm.GetType(vEP.DeclaringType.FullName).GetMethod("SetClient");
var vInst = vAsm.CreateInstance(vEP.Name);
vSC.Invoke(vInst, new object[] { client, license });
vEP.Invoke(vInst, null);
Проблема: Два из текущих приложений - 32 бит. Однако одно из моих приложений - 64 бит.
Вопрос: Если я создам клиентское приложение в AnyCPU, он сможет загружать как 32-битные приложения, так и 64-битное приложение? Или может быть настройка, которая запускает ее на 64-битной, если машина поддерживает ее? Это было бы идеально, поскольку я бы просто обнаружил, что они 32bit/64bit и предупредит их, что одно приложение не поддерживается на их машине, если это так.
Я буду испытывать это сам, но, возможно, кто-то может дать мне какой-то совет, чтобы справиться с этим.
Спасибо!
Пожалуйста, введите код 'с форматированием' в свой вопрос. Это позволяет каждому видеть и легко редактировать ваш существующий код для вас и делает вопросы/ответы более читаемыми. – gravity