我有我的内置应用程序的问题。C#项目,GAC,DLL
我有一个项目取自here修改它并在我的程序中实现。这个TableProc项目很快就会生成一个报告给OpenOffice Calc,并使用OpenOffice的一些库--cli_basetypes(GAC/MSIL),cli_oootypes(GAC/MSIL),cli_uno(GAC/MSIL),cli_ure(GAC/MSIL),cli_uretypes( GAC/MSIL)AND cli_cppuhelper(GAC32)。
的样子:
解决方案
..... PROJECT1(引用TableProc)
..... Project2的(引用TableProc)
..... TableProc(实现)(在库的引用bin目录cli_basetypes.dll和其他)
因此,当我在调试模式VS 2010,那些DLL在目录* /斌/ - 一切工作正常 - 报告完成。
但是,当我建立我的应用程序:
1.有没有DLL对cli_basetypes,cli_oootypes和其他
2.有project1.dll,project2.dll和TableProc.dll和 的Program.exe
问题:
在建立应用程序,它会告诉:
错误1:
Could not load file or assembly 'cli_cppuhelper, Version=1.0.14.0, Culture=neutral, PublicKeyToken=ce2cb7e279207b9e' or one of its dependencies. Ann attempt was made to load a programm with an incorrect format.)
好吧,我试图手动将这些DLL的旁边我的Program.exe - 同样的错误。
然后我发现,当您安装Open Office时,这些库安装在GAC中。我看着他们,发现他们都安装在GAC/MSIL中,但cli_cppuhelper安装在GAC/32中。
我试图手动从GAC/32 GAC/MSIL,并得到这个错误复制cli_cppuhelper组件:
错误2:
Is not a valid Win32 application. (Exception from HRESULT: 0x800700C1))
从这个我理解,我的apllication,当容貌对于DLL的它看起来只是在GAC/MSIL
请帮帮忙,我不知道该怎么办......
史蒂夫4月2日从AnyCPU改变你的平台的x86 – Steve