Microsoft MVP성태의 닷넷 이야기
C# 으로 만들 dll 등록 [링크 복사], [링크+제목 복사]
조회: 12455
글쓴 사람
이정석 (jslee at lawkorea.com)
홈페이지
첨부 파일
 

안녕하세요!
제가 비쥬어스튜디오 2017 c#으로 dll 파일을 만들었습니다.

빌드>출력>com interop 를 체크하고 컴파일하면 레지스트리에 등록이 되서
<object id="Main" classid="clsid:FB07E288-2954-475D-BB91-33626EC2FCCD"></object> 이렇게 하면 그 DLL을 사용할 수 있습니다

그런데 빌드>출력>com interop 를 체크하지 않고 컴파일 한후 dll을

vs 2017에 대한 개발자 명령 프롬프트를 관리자 모드로 실행하여

regasm 명령어로 등록하면, 형식이 등록되었다고는 나오는데
<object id="Main" classid="clsid:FB07E288-2954-475D-BB91-33626EC2FCCD"></object> 이렇게 해서 그 DLL을 사용할 수 없습니다.

그래서 이 dll을 다른 컴퓨터에서 사용하게 할 수가 없습니다.

어떻게 하면 이문제를 해결 할 수 있을까요?








[최초 등록일: ]
[최종 수정일: 8/6/2018]


비밀번호

댓글 작성자
 



2018-08-06 07시05분
아래의 글 3개를 참고하세요.

regasm.exe로 어셈블리 등록 시 시스템 변경 사항 (1) - .NET 2.0 + x86/x64/AnyCPU
; http://www.sysnet.pe.kr/2/0/1286
 
regasm.exe로 어셈블리 등록 시 시스템 변경 사항 (2) - .NET 4.0 + .NET 2.0
; http://www.sysnet.pe.kr/2/0/1287

regasm.exe로 어셈블리 등록 시 시스템 변경 사항 (3) - Type Library
; http://www.sysnet.pe.kr/2/0/1288

개인적으로는, C#을 COM으로 노출하는 건 권장하지 않습니다. 대신 할 수 있다면 다음의 방법이 더 좋을 것입니다.

C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법
; http://www.sysnet.pe.kr/2/0/11052
정성태
2018-08-08 02시42분
[이정석] 고맙습니다.
[guest]
2018-08-08 02시45분
[이정석] 고맙습니다.
그런데 ; http://www.sysnet.pe.kr/2/0/11052 이글보고 만든 DLL을
html 파일에서 <object id="Main" classid="clsid:FB07E288-2954-475D-BB91-33626EC2FCCD"></object> 이렇게 호출해도 그 DLL을 사용할 수 없습니다.
왜 일까요?

[guest]
2018-08-08 05시06분
아... 제가 질문을 대충 읽었습니다. html에서의 object였군요. 그런 경우라면 마지막 글이 도움이 안 됩니다. 무조건 COM 객체로 등록해야 합니다.
정성태
2018-08-08 06시12분
[이정석] 고맙습니다.
com객체로 등록한다는게 regasm.exe로 어셈블리 등록 시 시스템 변경 사항 (1) (2) (3)번을 참조해서 하란 말씀이신지요?
[guest]
2018-08-08 06시23분
넵, 어차피 Visual Studio가 해주는 것도 regasm.exe를 이용한 등록일 것입니다.
정성태
2018-08-08 08시09분
[이정석] 고맙습니다.
도움이 많이 되었습니다.
[guest]

... 16  17  18  19  20  21  22  23  24  25  26  27  [28]  29  30  ...
NoWriterDateCnt.TitleFile(s)
5177농상6/13/20199448멀티스레드 건의 [2]
5176이선호6/13/20199043안녕하세요. 닷넷 문제로 검색하다 알게되어 들어왔습니다. 현재 IIS 문제가 있어 질문드립니다. [1]
5175Chobo6/12/20199020WPF Ellipse 그리기! [3]
5174농상6/11/20198452ThreadPool 조인에 관해 [1]
5173전우치6/9/20198787공유 리소스에 대한 스레드 동기화 처리를 위해서 lock 이용 시 문의 [3]
5172김대훈6/7/20197592너무힘드네요 공부에 대한조언부탁드립니다 [2]
5171조남석6/4/20197282EX)11-2(treeview)에 대한 질문입니다. [3]
5170레리6/4/20197866Setup 프로젝트 레지스트리 설정 관련 질문입니다. [1]파일 다운로드1
5169농상6/3/20197634멀티스레드 파라미터 관련 [2]
5168익명유저5/30/20196917항상 정말 감사드립니다... [1]
5167WPF5/23/20197848질문드립니다. [1]
5165이대희5/22/20196992Visual Studio 설치 구성요소 문의 (C# 7.3 개정판 관련) [1]
5164레드5/21/20198502실행 과정과 실행파일 디버그 시 Icon변경 질문드립니다. [5]
5163이대희5/20/20196802시작하세요 C# 7.3 프로그래밍 책 도착했습니다. [1]
5162채홍윤5/14/20199628Mono Develop window 설치 [6]
5161정대영5/13/20197609VS 2013에서 C#6.0(.netFramwork 4.6.1) $ 디버깅 오류 [1]
5160초보개발자5/13/20198574wcf 관련 국내 서적 살만한 책이 있나요? [2]
5159sdh25/9/20198077VS 2010 버전에서 생성한 DLL을 VS 2017버전에서 실행 시 에러 [2]
5158sdh5/8/20196989Visual studio 2010 버전에서 생성한 Project를 Visual studio 2017버전에서 실행에러 [1]
5157김경훈5/8/201910024Task 만들때 넘겨주는 CancellationToken은 어디서 사용 되는 건가요? [4]
5156rysoo5/8/20198291yield return의 리턴 타입 질문 드립니다. [4]
5155세퉁5/7/201910158관리자 권한으로 실행 시 알림창(?) 없이 바로 실행 시킬 수 있는 방법이 있을까요?? [2]파일 다운로드1
5154Soul...5/4/20197041NamedPipe 질문드립니다. [2]
5153개태5/4/20197995WCF RESTful Service에서 enum을 parameter로 쓰는방법 [2]
5152세퉁5/3/20199183인터넷 시간을 불러와 pc에 적용 시키고 싶습니다. [3]파일 다운로드1
5151이대희5/3/20197238C# 7.3으로 개정판 출간 계획이 있으신가요? [1]
... 16  17  18  19  20  21  22  23  24  25  26  27  [28]  29  30  ...