#.net
#.net
Вопрос:
Я зарегистрировал свою dll как COM с помощью приведенной ниже команды через доступ администратора. C:WindowsMicrosoft.NETFramework64v4.0.30319RegAsm.exe /codebase dllPath он показал типы, зарегистрированные успешно. я мог видеть зарегистрированную информацию в реестре
Это не сработало, когда я пытаюсь вызвать функцию.
Type t= Type.GetTypeFromProgID(progid);
dynamic o =Activator.CreateInstance(t);
string result=o.GetResult();
Исключение похоже на приведенное ниже, и трассировка t равна нулю.
Значение не может быть нулевым.rnPпараметр имя: тип
Целевая платформа: x64 и любой процессор не работают. Помечено, чтобы сделать сборку COM видимой.
Комментарии:
1. Обычно забывают использовать атрибут ProgID . Имейте в виду, что вы ничего не тестируете, делая это с помощью кода C #. Ну, кроме отсутствующего [ProgID], возможно.
2. Привет, Ганс, он работает хорошо, когда я поставил галочку в регистре для COM-взаимодействия, но нам нужно развернуть его на сервере, на котором только что установлена платформа.