当前位置: 首页 > 编程语言 > C#

c#exceldll-无法添加对指定文件的引用-regasm分享

时间:2023-04-10 19:19:01 C#

c#exceldll-无法添加对指定文件的引用-regasm在另一台电脑上部署注册.NetExcel.dll时尝试添加对DLL的引用无法在VBA编辑器中添加对指定文件的引用,出现错误。我在VisualStudio中使用C#创建了Excel.dll,它在我的Windows7和Office2010机器上运行良好。在我的计算机上的ExcelVBA编辑器中添加对dll的引用没有问题。我的问题是在另一台运行Vista和Excel2007的机器上部署。我将dll复制到这台计算机并使用regasm注册dll。谁能指出我正确的方向?这是代码和regasm:C:\Windows\Microsoft.NETFrameworkv4.0.30319regasm.exeexcelDll.dllusingSystem;使用System.Collections.Generic;使用System.Linq;使用系统文本;使用System.Windows.Forms;使用System.Runtime.InteropServices;命名空间TestDll{[ClassInterface(ClassInterfaceType.AutoDual)]publicclassTest{publicstringHelloWorld{get{return"HelloWorld";}}publicvoidsayGoodbye1(){消息框。显示(“说再见”);}publicstringsayGoodbye2(){返回“说再见”;您需要注册excel类型库才能在References中查看您的dll。那就是regasm.exeexcelDll.dll/tlb:excelDll.tlb标志。我最近遇到并设法解决了这个问题-尽管我不能声称理解我的解决方案为何有效。我的两个系统都运行Windows7x64。一个是Excel2010,另一个是Excel2007。所有C#程序集都设置为“PlatformTarget:AnyCPU”。主程序集设置为“RegisterforCOMInterop”。整个过程是使用从VisualStudioInstaller项目创建的MSI安装的。我发现,如果我将VisualStudio安装程序项目“目标平台”设置为“x64”,那么它可以在Excel2010中运行,但不能在Excel2007中运行。相反,如果我将VisualStudio安装程序项目“目标平台”设置为“x86”,它适用于Excel2007但不适用于Excel2010。不幸的是,我无法同时在同一台机器上测试两个Excel版本-但至少这可能使它对你有用!以上就是C#学习教程:c#exceldll-无法添加对指定文件的引用-全部内容regasm分享,如果对大家有用还需要了解更多C#学习教程,希望大家多多关注it——本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处: