我在Windows XP和Windows 7 PC上都有一个适用于我们企业工作场所的应用程序。
该应用程序是使用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上网本。它们具有1.66GHz Atom处理器,2 GB RAM和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,所有的网络节目人都会看到这个。
这不是我的情况。
我的安装程序和应用程序目前在其他PC上运行正常,但我正在测试的上网本给我带来了问题。
如何找出这个LoaderException是什么?我无法查看调试器,因为这是在安装过程中(即不是在调试过程中),而是在完全不同的机器上进行。
答案 0 :(得分:1)
也许这会对别人有所帮助。
问题出在第三方控件(LabelView),它不是64位兼容的。
只要应用程序仅作为x86项目构建,应用程序就可以正常安装。