我在C#中创建了一个excel插件。它使用dllimport使用C ++ DLL本机代码。它在我的本地机器上工作正常。现在我想在另一台PC /客户端PC上使用它。我也尝试过regasm。我成功注册如下:
C:\windows\system32>C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm /code
base C:\Users\ggirgup\Desktop\CsharpDllcallingCPPDll.dll
Microsoft .NET Framework Assembly Registration Utility version 4.0.30319.17929
for Microsoft .NET Framework version 4.0.30319.17929
Copyright (C) Microsoft Corporation. All rights reserved.
RegAsm : warning RA0000 : Registering an unsigned assembly with /codebase can ca
use your assembly to interfere with other applications that may be installed on
the same computer. The /codebase switch is intended to be used only with signed
assemblies. Please give your assembly a strong name and re-register it.
Types registered successfully
但是当我打开excel时,插件中没有显示它。 那么如何在另一台PC上使用这个C#dll作为excel-plugin呢?
提前谢谢!
答案 0 :(得分:0)
你在看什么插件窗口?为了确保我们正在谈论正确的一个,请转到功能区上的“开发人员”选项卡(如果这不可见,请转到Excel选项 - >热门并选中“在功能区中显示开发人员选项卡”)并单击“ Visual Basic“最左边的项目。 VB Developer窗口打开后,转到Tools - >引用。这将打开所有可用的引用。如果你没有看到你的,那么你必须点击“浏览”才能到达它。我使用了regasm的/ tlb选项并浏览了regasm输出的.tlb文件并添加了它作为参考,它对我有用。不确定它是否可以在没有TLB的情况下工作,但我不明白为什么不这样做。