Я создал плагин Excel в C #. Он использует нативный код C ++ dll, используя dllimport. Он отлично работает на моей локальной машине. Теперь я хочу использовать его на другом ПК / клиентском ПК. Я пробовал и регазм. Я успешно зарегистрировался, как показано ниже:
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, он там не показывается в плагинах.
Итак, как я могу использовать этот C # dll в качестве Excel-плагина на другом ПК?
Спасибо заранее ТАК!
На какое окно плагина вы смотрите? Просто чтобы убедиться, что мы говорим о правильном, перейдите на вкладку Разработчик на ленте (если это не видно, перейдите в Параметры Excel -> Популярные и установите флажок «Показать вкладку разработчика на ленте») и нажмите «Визуальный Базовый «предмет слева». Когда откроется окно VB Developer, перейдите в Инструменты -> Ссылки. Это откроет все доступные ссылки. Если вы не видите свой, то вам придется нажать «Обзор», чтобы добраться до него. Я использовал параметр / tlb с regasm и перешел к файлу .tlb, выведенному regasm, и добавил его в качестве ссылки, и он работал для меня. Не уверен, что это будет работать без TLB, но я не понимаю, почему нет.
Других решений пока нет …