C#项目,GAC,DLL
我构建的应用程序有问题 我有一个修改后的项目,并在我的程序中实施。C#项目,GAC,DLL,c#,dll,gac,cil,openoffice-calc,C#,Dll,Gac,Cil,Openoffice Calc,我构建的应用程序有问题 我有一个修改后的项目,并在我的程序中实施。 很快,这个TableProc项目将生成一个报告给OpenOffice Calc,并使用OpenOffice中的一些库——cli基本类型(GAC/MSIL)、cli oootypes(GAC/MSIL)、cli uno(GAC/MSIL)、cli(GAC/MSIL)、cli类型(GAC/MSIL)和cli cppuhelper(GAC32) 看起来像: 解决方案 …项目1(参考TableProc) …项目2(参考TableProc
很快,这个TableProc项目将生成一个报告给OpenOffice Calc,并使用OpenOffice中的一些库——cli基本类型(GAC/MSIL)、cli oootypes(GAC/MSIL)、cli uno(GAC/MSIL)、cli(GAC/MSIL)、cli类型(GAC/MSIL)和cli cppuhelper(GAC32) 看起来像:
解决方案
…项目1(参考TableProc)
…项目2(参考TableProc)
..…TableProc(已实现)(关于bin目录cli_basetypes.dll中的库和其他库的参考) 因此,当我处于调试模式VS 2010时,这些DLL位于目录*/bin/-一切正常-报告完成 但当我构建应用程序时:
1.没有用于cli\u基类型、cli\u oot类型和其他类型的DLL
2.有project1.dll、project2.dll和TableProc.dll以及 Program.exe 问题: 在构建的应用程序中,它告诉您: 错误1: 无法加载文件或程序集cli\u cppuhelper,版本=1.0.14.0, 文化=中性,PublicKeyToken=ce2cb7e279207b9e'或其 依赖关系。Ann试图加载带有 格式不正确。) 好的,我试图手动将这些DLL放在我的Program.exe旁边-同样的错误 然后我发现,这些库是在安装OpenOffice时安装在GAC中的。我查看了它们,发现它们都安装在GAC/MSIL中,但cli_cppuhelper安装在GAC/32中 我试图手动将cli_cppuhelper程序集从GAC/32复制到GAC/MSIL,但出现以下错误: 错误2: 不是有效的Win32应用程序。(HRESULT的例外情况: 0x800700C1) 由此我了解到,我的应用程序在查找DLL时只在GAC/MSIL中查找
请帮忙,我不知道该怎么办…将您的平台从AnyCPU更改为x86。对于那些将来会发现这一点的人 问题是Visual Studio中的目标平台不正确。.dll需要使用正确的位版本编译 您需要将Visual Studio中的目标平台更改为:
- 64位->x64
- 32位->x86
注意:AnyCPU不工作。将平台从AnyCPU更改为x86