최근에 네티즌 분들이 많이 문의해주셔서 간단하게 정리하겠습니다. 궁금하신 점은 댓글로 남겨주시면 됩니다.
1. 새 DLL 생성
VB6 열기-->파일-->새 프로젝트-->ActiveX DLL 선택-->확인
2. 기본 프로젝트 및 클래스의 이름을 바꿉니다.
프로젝트 이름 바꾸기: 프로젝트 --> 프로젝트 1 속성(이 이름은 양식의 프로젝트 이름에 해당) --> 열기 대화 상자에서 "프로젝트 이름"의 이름을 ASP2DLL로 바꿉니다(DLL 구성 요소가 시스템에 등록된 후 ASP의 기본 호출 방법은 "프로젝트 이름.클래스 이름") --> 확인
Class Rename 속성 창에서 Demo로 이름을 변경합니다.
3. ASP 기본 개체 정의
모듈 추가: 프로젝트-->모듈 추가-->"모듈" 선택-->열기
모듈 이름을 바꿉니다. 프로젝트 탐색기-->모듈--Module1->속성 창에서 Module1의 이름을 "ASPMod"로 바꿉니다.
모듈 코드를 추가합니다. 이 코드는 vb에 캡슐화된 거의 모든 ASP DLL 구성 요소에 적용됩니다. ASP2DLL을 프로젝트 이름으로 변경하거나 호출 시 일관성을 유지하세요.
다음과 같이 코드 코드를 복사합니다.
Public objContext를 ObjectContext로 사용
ASPTypeLibrary.Application으로서의 공용 애플리케이션
ASPTypeLibrary.Server로서의 공용 서버
ASPTypeLibrary.Session으로서의 공개 세션
ASPTypeLibrary.Response로 공개 응답
ASPTypeLibrary.Request 형식의 공개 요청
공개 하위 ASP2DLL_Initialize()
오류 발생 시 다음 재개
objContext = GetObjectContext 설정
애플리케이션 설정 = objContext.Item("애플리케이션")
서버 설정 = objContext.Item("서버")
세션 설정 = objContext.Item("세션")
요청 설정 = objContext.Item("요청")
응답 설정 = objContext.Item("응답")
서브 끝
공개 하위 ASP2DLL_Terminate()
오류 발생 시 다음 재개
응용 프로그램 설정 = 없음
서버 설정 = 없음
세션 설정 = 없음
요청 설정 = 없음
응답 설정 = 없음
objContext = 없음 설정
서브 끝
공용 함수 평가(ByRef strEval)
Dim EvalObject를 새 ScriptControl로 사용
EvalObject.Language = "VBScript"
평가 = EvalObject.Eval(strEval)
EvalObject = 없음으로 설정
기능 종료
4. 새로 생성된 DLL을 저장합니다.
파일-->프로젝트 저장하고 끝까지 확인한 후 모든 모듈, 클래스 모듈, 프로젝트 파일을 하나의 폴더에 저장합니다.
5. 클래스 모듈에서 ASP 개체 호출
프로젝트 탐색기 --> 클래스 모듈 --> Demo를 두 번 클릭하여 Demo 클래스 모듈 코드 편집기로 전환하고, 코드를 붙여넣고, 클래스 호출 및 클래스 소멸을 초기화합니다. 코드는 다음과 같습니다.
다음과 같이 코드 코드를 복사합니다.
비공개 하위 클래스_Initialize()
ASP2DLL_초기화
서브 끝
비공개 하위 클래스_Terminate()
ASP2DLL_종료
서브 끝
이제 기본 DLL 프레임워크가 완성되었으며 필요에 따라 필요한 캡슐화된 기능을 완료할 수 있습니다.
6. 새로운 테스트 기능 생성
Demo 클래스 모듈 아래에 다음 두 테스트 함수를 붙여넣습니다.
다음과 같이 코드 코드를 복사합니다.
공개 서브 안녕하세요()
Response.Write ("Hello World!")
하위 종료
서브 끝
7. DLL 컴파일 및 생성
파일-->ASP2DLL.dll 생성-->프로젝트가 있는 폴더를 선택하고 확인합니다. 이때 오류 메시지가 없으면 dll 구성 요소가 성공적으로 컴파일되었음을 증명합니다.
8. 구성 요소 등록 및 제거
ASP2DLL.dll 구성 요소가 있는 디렉터리에 생성됩니다.
"Registration.bat" 배치 파일에 다음을 입력합니다.
다음과 같이 코드 코드를 복사합니다.
재설정/중지
regsvr32/sASP2DLL.dll
재설정/시작
"Uninstall.bat" 배치 파일에 다음을 입력하십시오.
다음과 같이 코드 코드를 복사합니다.
재설정/중지
regsvr32 /u /sASP2DLL.dll
재설정/시작
등록에 성공하면 "ASP2DLL.dll의 DllRegisterServer가 성공했습니다."라는 메시지가 표시됩니다.
9. ASP 프로그램에서 새로 캡슐화된 DLL 구성 요소 및 테스트 기능을 호출합니다.
2단계에서 우리는 "DLL 구성 요소가 시스템에 등록될 때 asp의 기본 호출 방법은 '프로젝트 이름. 클래스 이름'"이라는 것을 알고 있으므로 개체는 다음과 같이 생성되어야 합니다. set Obj = Server.CreateObject ("프로젝트 이름. 클래스 이름") 코드는 다음과 같습니다.
다음과 같이 코드 코드를 복사합니다.
<%
DimASP2DLL
ASP2DLL = Server.CreateObject("ASP2DLL.Demo") 설정
ASP2DLL.hello()
SetASP2DLL = 없음
%>
10. 프로젝트 파일 및 관련 모든 컨텐츠를 포함한 패키지 다운로드 링크 (20110221 업데이트 다운로드 링크) 패키지 다운로드
DLL을 컴파일할 때 주의할 몇 가지 사항:
1. VB 예약 키워드를 함수나 변수 이름으로 사용하지 마십시오.
2. 일반 및 Eval과 같은 일부 Vbscript 함수는 "프로젝트-->참조-->Microsoft Script Control 1.0" 및 "Microsoft VBScript Regular Expressions 5.5"를 로드해야 합니다.
3. 캡슐화는 근본적인 속도 향상을 가져올 수 없으며 가상 호스트와 원격 서버에는 구성 요소 등록 권한이 필요합니다.
4. 기존 구성 요소 이름이나 수정된 dll 파일의 경우 먼저 IIS를 중지한 다음 IIS를 다시 시작하여 dll 구성 요소를 등록해야 합니다.
5. VB6 SP6 간소화된 녹색 버전 다운로드 링크
원본 텍스트:?cateID=20 작성자의 노고에 감사드립니다. 내용은 훌륭하지만 웹사이트 접속이 너무 느립니다.