У меня есть приложение, которое работает на нашем корпоративном рабочем месте на компьютерах с Windows XP и Windows 7.
Приложение построено с использованием Visual Studio 2008, и новые компоненты не были добавлены.
Решение включает установщик Visual Studio, который переопределяет событие Committed, спрашивая, хочет ли человек запустить приложение:
public AcpInstaller() : base() {
this.Committed += new InstallEventHandler(MyInstaller_Committed);
}
void MyInstaller_Committed(object sender, InstallEventArgs e) {
if (MessageBox.Show("Start ACP Suite now?", "Launch Application?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) {
try {
Process p = new Process()
{
StartInfo = new ProcessStartInfo(Context.Parameters["assemblypath"])
};
p.Start();
} catch (Exception err) {
MessageBox.Show(err.Message, "Launch Failed", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
Недавно мы добавили несколько новых нетбуков HP Mini. В них установлены процессоры Atom с тактовой частотой 1,66 ГГц, 2 ГБ оперативной памяти и Win7 Pro x32.
Error 1001. Unable to get installer types in the <executable>
assembly. --> Unable to load one or more of the
requested types. Retrieve the LoaderExceptions property for more information.
Все в Интернете показывают, что люди получают это при переходе с VS2005 на VS2008 или VS2008 на VS2010.
Это не мой случай.
Мой инсталлятор и приложение в настоящее время работают так же, как и на других ПК, но этот нетбук, на котором я тестирую, вызывает у меня проблемы.
Как я могу узнать, что это за исключение LoaderException? Я не могу заглянуть в Отладчик, потому что это происходит во время Установки (т.е. не во время процесса отладки), и это происходит на совершенно другой машине.