C#으로 컴파일된 COM 구성 요소를 호출하는 Asp의 예
1 새로운 클래스 라이브러리 MyTestDLL을 생성합니다.
2 MyTestDLL 프로젝트를 마우스 오른쪽 버튼으로 클릭->속성->생성->COM 상호 운용성에 등록 확인
3 AssemblyInfo.cs 파일을 열고 [어셈블리: ComVisible(true)]를 수정합니다.
4 Visual Sutdio 2008의 명령 프롬프트 도구를 열고 guidgen.exe를 입력하고 DEFINE_GUID를 선택하고 새 GUID를 클릭합니다.
5개의 코드
1. 각 클래스 이름은 인터페이스 이름에 해당합니다. 인터페이스 이름은 클래스 이름에 대문자 I를 더한 것입니다.
2. 인터페이스에 선언된 메소드는 [DispId(n)] 속성을 사용해야 합니다.
3. 클래스에는 매개변수가 없는 생성자가 있어야 합니다.
암호
시스템 사용;
System.Collections.Generic을 사용합니다.
System.Linq 사용;
System.Text 사용;
System.Runtime.InteropServices 사용;
네임스페이스 MyTestDll
{
//여기의 Guid는 4단계에서 생성됩니다.
[구이드(FFA4B191-FB5B-4dd5-B7B1-B2F32BF6F1FF)]
공개 인터페이스 IMyTestDll
{
[DispId(0)]
문자열 GetAbout();
}
공개 클래스 Test1:IMyTestDll
{
PRivate 문자열 요약;
공개테스트1()
{
요약 = 이번이 첫 번째 테스트입니다.
}
공개 문자열 GetAbout()
{
반품 요약;
}
}
}
6 프로젝트 생성
ASP 테스트 코드
<%
희미한 오
o = Server.CreateObject(MyTestDll.Test1)로 설정
응답.쓰기 o.GetAbout()
o=아무것도 설정하지 않음
%>
팁: C#으로 개발한 COM 구성 요소를 다른 컴퓨터에서 사용하려면 이를 regasm에 등록해야 합니다.
방법은 다음과 같습니다.
먼저 bin/Debug 디렉터리의 파일을 대상 컴퓨터에 복사한 후 명령 프롬프트 도구를 열고 다음을 입력합니다.
regasm /tlb f:/dll/filename.tlb /codebase에 복사한 디렉토리/filename.dll
이 컴퓨터에서 실행을 사용할 수 있습니다.