[英]WinSCP .NET assembly with VBA throwing ActiveX component can't create object
我最近使用 .NET Framework C:\\Windows\\Microsoft.NET\\Framework64\\v2.0.50727
注册了WinSCPnet.dll
。 我已将生成的 tlb 文件添加到我的 VBA 引用中。 但是当我尝试实例化SessionOptions
对象时,它会引发错误“ActiveX 组件无法创建对象” 。 不知道这里出了什么问题。
此外,我发现我可以使用 VBScript 进行连接。 但是如果我使用 VBA,它就不起作用。 任何人都可以建议是什么问题?
如果您的 Microsoft Excel 安装是 32 位应用程序,则您必须为 32 位 .NET 框架注册WinSCPnet.dll
,即使在 64 位系统上也是如此。
正如为 COM 注册 WinSCP .NET 程序集的说明所示,在 64 位系统上,您通常需要为 32 位和 64 位注册程序集:
%WINDIR%\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe WinSCPnet.dll /codebase /tlb:WinSCPnet32.tlb
%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe WinSCPnet.dll /codebase /tlb:WinSCPnet64.tlb
不要将.tbl
手动添加到 Excel。 程序集在正确注册后出现。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.