1

最近、WinSCPnet.dllusing .NET Framework を登録しましたC:\Windows\Microsoft.NET\Framework64\v2.0.50727。そして、生成された tlb ファイルを VBA 参照に追加しました。しかし、オブジェクトをインスタンス化しようとすると、 「ActiveX コンポーネントはオブジェクトを作成できません」SessionOptionsというエラーがスローされます。ここで何がうまくいかなかったのかわからない。

また、VBScript を使用して接続できることもわかりました。しかし、VBA を使用すると、機能しません。誰が問題が何であるかを提案できますか?

4

1 に答える 1

3

Microsoft Excel のインストールが 32 ビット アプリケーションの場合WinSCPnet.dll、64 ビット システムであっても、32 ビット .NET フレームワーク用に を登録する必要があります。

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に追加しないでください。正しく登録されると、アセンブリ自体が表示されます。

于 2016-01-29T19:47:27.863 に答える