我有一个用C#编写的库,它使用标准的.NET框架库(系统、System.Windows.Forms)。这个库和它的类一样是COMVisible的,我只有两个类:- TestClass (一个只有一个方法的类)- TestForm (一个空表单)
我按照这里的建议注册了程序集:C# COM DLL: do I use Regasm, or Regsvr32?
然后,我转到我的Excel外接程序,并添加了对生成的.TLB文件的引用。
我可以创建"TestClass“的一个实例并调用它的方法,但当我尝试创建"TestForm”的一个实例时,它显示了这个错误:
Run-time error '-2147024894 (80070002)':
Automation error
The system cannot find the file specified.根据我在尝试让类正常工作时看到的问题,问题是其中一个依赖项(我猜是System.Windows.Forms)没有被Excel发现。
如何从64位Office外接程序打开用.NET编写的表单?
提前感谢
发布于 2011-12-15 20:46:07
下面的例子可能会帮助你VBA7代码如何在64位Office中工作。
添加到64位Office插件可能不是问题,但当您尝试在VBA7中使用它们时,您肯定会遇到问题。
测试是否使用64位版本的Office2010(VBA7):
#If Win64(VBA7) Then
Declare PtrSafe Function GetTickCount64 Lib "kernel32" () As LongLong
#Else(VBA)
Declare PtrSafe Function GetTickCount Lib "kernel32" () As Long
#End If如果我错了,请用解决方案@kirantej@gmail.com联系我,因此,我也在做同样的任务...:-p
https://stackoverflow.com/questions/8334320
复制相似问题