Я думаю, что вы забыли установить некоторые параметры:
- установить регистр для com-взаимодействия из меню сборки на странице свойств проекта.
- код вашего элемента управления должен быть примерно таким (не забудьте Comvisible and Guid):
Код:
using System.Runtime.InteropServices;
namespace WindowsFormsControlLibrary1
{
[ComVisible(true)]
[Guid("CD46781D-B691-4287-B802-C9E2540AF08A")]
[ProgId("WpfComHostDemo.WinformHostUserControl")]
[ClassInterface(ClassInterfaceType.AutoDispatch)]
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(Environment.UserName+" "+Environment.MachineName+" "+
Environment.OSVersion);
}
}
}
в вашей html или asp.net странице используйте этот код:
<object classid="clsid:CD46781D-B691-4287-B802-C9E2540AF08A" />
поместите dll-контроль uour в корень вашего веб-сайта
- нет необходимости добавлять его в качестве ссылки.