Функция вызова в VB.Net DLL без регистрации DLL

Можно ли вызвать функцию в dll VB.Net без регистрации файла dll? Мне нужно вызвать его из ASP Classic на веб-сервере общего хостинга.


person HK1    schedule 26.01.2011    source источник


Ответы (2)


Единственный способ вызвать VB.NET DLL из классического ASP — сделать его COM-объектом и вызвать его соответствующим образом.

person John Saunders    schedule 26.01.2011
comment
Извините, я слишком зелен, чтобы понять, что вы подразумеваете под созданием COM-объекта. Это как-то связано с тем, как он запрограммирован или как он установлен? Нужно ли будет регистрироваться на сервере? - person HK1; 26.01.2011
comment
Да, раньше был способ сделать классические библиотеки DLL WIN32 из Visual Basic 6 (это было запутанно). Увы, я не думаю, что это возможно из VB.NET. - person Robert Harvey; 26.01.2011
comment
Если вы создаете COM-объект в VB.NET, можете ли вы по-прежнему использовать классы .Net Framework? - person HK1; 26.01.2011
comment
Итак, ответ на мой первоначальный вопрос: нет, это невозможно. - person HK1; 26.01.2011
comment
@HK1: Да, верно. Однако ответ на более общий вопрос о том, могу ли я использовать код VB.NET из Classic ASP, — да, просто сделайте его COM-объектом. - person John Saunders; 26.01.2011
comment
@John: Можно ли использовать созданный таким образом COM-объект на сервере ASP без регистрации COM-объекта на сервере, возможно, с помощью COM без регистрации? - person Robert Harvey; 26.01.2011

Предполагая, что хост также поддерживает .NET, вы можете выполнить следующие шаги для достижения желаемого:

  1. Создайте новое веб-приложение ASP.NET
  2. Добавьте ссылку на эту DLL
  3. Создайте веб-форму .aspx, которая вызывает функцию в своем вызове Page_Load, например, Func.aspx
  4. В классическом ASP используйте XMLHTTP для отправки запроса на Func.aspx, тем самым вызывая функцию и анализируя результаты, если это необходимо.

Я делал нечто подобное в прошлом, чтобы изменять размер изображений на лету из классического ASP без стороннего компонента, так что сама концепция работает.

person Shadow Wizard Wearing Mask V2    schedule 27.01.2011
comment
Отличное решение. Я использую PHP аналогичным образом. Спасибо за эту идею. - person HK1; 28.01.2011