Scrapbook/개발 및 프로그래밍

C# COM+ 생성 및 등록 방법

가을이짱짱 2010. 12. 14. 16:19
반응형

1. C# 클레스라이브러리 프로젝트 생성.
2.참조에 System.EnterpriseSevices 참조추가 및 using에 추가 및 using System.Runtime.InteropServices; 추가.
3.sn.exe로 강력한 이름생성. sn.exe -k "test.snk"
4.Assemblyinfo.cs 의 [assembly: AssemblyKeyFile("..\\..\\sampleClass.snk")] 추가.
5.cs파일내 Class에 [ClassInterface(ClassInterfaceType.AutoDual)] 추가.
6.컴파일 한후 gacutil.exe -i test.dll 로 전역어셈블리케시에 등록
7.regsvcs.exe test.dll 로 COM+서비스에 등록. 8.해당COM요소의 등록정보->보안-> 인증에서 "어플리케이션 엑세스 체크" 해제.
9.asp 파일내에서 객체를 생성하여 사용.

############### 샘플C#코드
using System;
using System.Runtime.InteropServices;
using System.EnterpriseServices;

[assembly: ApplicationName(".NET COM+ 컴포넌트 예제")]    <-------
[assembly: ApplicationActivation(ActivationOption.Server)]    <-------
     
namespace sampleClass
{
 [ComVisible(true)]   <-------
 [ClassInterface(ClassInterfaceType.AutoDual)]  <-------
 
 public class MyComponent : ServicedComponent  <-------  상속필수.
 {
  public string ReturnString()
  {
   return "Hello";
  }
 }
}


출처: http://www.jiny.kr/126?category=12

반응형