Итак, возникла необходимость вызывать функционал, написанный на .NET из существующей asp-страницы. Для того, чтоб работал следующий стандартный VB 6 код:
<%@Language="VBScript" %>
<%
Dim testObj
Set testObj = server.createObject("testlib.Test")
Response.Write(testObj.TestFunc())
Response.End()
%>
надо сделать следующее:1. Скомпилировать сборку, с включенными флагами Properties -> Application -> Assembly Information -> Make Assembly COM-visible и Properties -> Signing -> Sign the assembly (создаем новый или выбираем существующий файл строгого имени в выпадающем списке 'Choose a strong name key file')
2. Создаем библиотеку типов для свежескомпилированной сборки: regasm testlib.dll /tlb:testlib.tlb
3. Регистрируем сборку: regasm testlib.dll
4. Помещаем её в GAC: gacutil /i testlib.dll (К сожалению у меня на этом шаге гакутыл постоянно падал, чесно говоря, что случился Unknown Error, по-этому пришлось внести её туда вручную - открыл проводником папку C:/Windows/Assemblies и просто перетащить мышкой мою сборку)
5. Создать COM сервер, и поместить в него приложение - нашу библиотеку. Всё. На этом этапе можно смело создавать тестовую страничку, подымать локальный веб сервер, и смотреть чего получилось :-)
Немає коментарів:
Дописати коментар