У меня есть сборка адаптера ac # вокруг не подписанной сторонней сборки, поэтому я тоже не могу подписать свою сборку.Моя сборка адаптера должна использоваться программой VB6 для доступа к функциям сторонней сборки, которая не является COM.Однако, хотя я могу зарегистрировать сборку с помощью regasm, сгенерировать файл tlb и сослаться на него в VB6, я получаю исключение ActiveX при попытке установить переменную Dimmed в новый экземпляр моего адаптера.
У меня установлены соответствующие платформы .Net, и я могу запустить сборку моего адаптера из командной строки через другой исполняемый файл .Net на компьютере, на котором установлен VB6.
Вот как я настраиваю свой COM, без третьего-Ссылка на справку .. только в случае, если это проблема ..
[ComVisible(true)]
[Guid("F728D70E-ED98-456C-B8C6-4EA5B0EF8A1A")]
[ClassInterface(ClassInterfaceType.None)]
[ProgId("SimpleComClass452.MySimpleComClass")]
public class MySimpleComClass : _MySimpleComClass
{
public int Add(int num1, int num2)
{
return num1 + num2;
}
}
[ComVisible(true)]
[Guid("C729E6FF-C2F5-4C9B-8200-A135E15576A6")]
[InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]
public interface _MySimpleComClass
{
[DispId(1)]
int Add(int num1, int num2);
}
Как я могу разобраться в проблемах с доступом к моей сборке адаптера с поддержкой .NET COM из VB6?Я посмотрел на procmon, но ничего не вижу.Есть ли способ выяснить, в чем проблема?