Microsoft MVP성태의 닷넷 이야기
오류 유형: 329. ATL 메서드 추가 마법사 창에서 8ce0000b 오류 발생 [링크 복사], [링크+제목 복사],
조회: 14721
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

ATL 메서드 추가 마법사 창에서 8ce0000b 오류 발생

ATL 프로젝트의 Class View에서 "Add Method Wizard"를 실행한 경우 다음과 같은 오류가 발생했습니다.

Line: 491
Char: 4
Error: Could not complete the operation due to error 8ce0000b.
Code: 0
URL: file:///C:/Program%20Files%20(x86)/Microsoft%20Visual%20Studio%2014.0/VC/VCWizards/CodeWiz/ATL/Method/HTML/1033/default.htm

검색해 보면 다음의 글이 나오는데요.

ATL Code Wizard: Add Method failes due to Script Error 
; https://connect.microsoft.com/VisualStudio/feedback/details/1056839/atl-code-wizard-add-method-failes-due-to-script-error

이슈를 제기한 Incubbus씨가 적절한 workaround를 직접 덧글에 달아두었습니다. ^^

방법은, 다음의 파일을 '관리자 권한'으로 실행한 notepad.exe등을 통해 편집하는데,

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\VCWizards\CodeWiz\ATL\Method\HTML\1033\default.htm

491라인의 코드를 다음과 같이 변경해 주는 것입니다.

var aryClasses = new Array();
if (GetInterfaceClass(oProject.CodeModel, oInterface.Name, oInterface.FullName, aryClasses, false))
{
    var oClass = aryClasses[0];
    if (strInterfaceType == "dispinterface")
    {
        if (oClass.IsDerivedFrom("COleControl"))
        {
            bMFC = true;
            bCOleControl = true;
        }
        else if (oClass.IsDerivedFrom("CCmdTarget"))
        {
            bMFC = true;
        }
    }
/*
    if (oClass.IsDerivedFrom("COleControl") && strInterfaceType == "dispinterface")
    {
        bMFC = true;
        bCOleControl = true;
    }   
    else if (oClass.IsDerivedFrom("CCmdTarget") && strInterfaceType == "dispinterface")
        bMFC = true;
*/
}

타당한 변경입니다. 사실 이제는 거의 "dispinterface"를 사용하지 않기 때문에 그 조건을 먼저 검사함으로써 oClass.IsDerivedFrom 호출시 8ce0000b 에러가 발생하는 것을 우회하는 것입니다. ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 5/10/2016]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  [53]  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
12305정성태9/1/202011110Windows: 172. "Administered port exclusions"이 아닌 포트 범위 항목을 삭제하는 방법
12304정성태8/31/202010069개발 환경 구성: 505. 윈도우 - (네트워크 어댑터의 우선순위로 인한) 열거되는 IP 주소 순서를 조정하는 방법
12303정성태8/30/202010246개발 환경 구성: 504. ETW - 닷넷 프레임워크 기반의 응용 프로그램을 위한 명령행 도구 etrace 소개
12302정성태8/30/202010159.NET Framework: 936. C# - ETW 관련 Win32 API 사용 예제 코드 (5) - Private Logger파일 다운로드1
12301정성태8/30/202010429오류 유형: 641. error MSB4044: The "Fody.WeavingTask" task was not given a value for the required parameter "IntermediateDir".
12300정성태8/29/20209880.NET Framework: 935. C# - ETW 관련 Win32 API 사용 예제 코드 (4) CLR ETW Consumer파일 다운로드1
12299정성태8/27/202010805.NET Framework: 934. C# - ETW 관련 Win32 API 사용 예제 코드 (3) ETW Consumer 구현파일 다운로드1
12298정성태8/27/202010519오류 유형: 640. livekd - Could not resolve symbols for ntoskrnl.exe: MmPfnDatabase
12297정성태8/25/20209737개발 환경 구성: 503. SHA256 테스트 인증서 생성 방법
12296정성태8/24/202010178.NET Framework: 933. C# - ETW 관련 Win32 API 사용 예제 코드 (2) NT Kernel Logger파일 다운로드1
12295정성태8/24/20209595오류 유형: 639. Bitvise - Address is already in use; bind() in ListeningSocket::StartListening() failed: Windows error 10013: An attempt was made to access a socket ,,,
12293정성태8/24/202010911Windows: 171. "Administered port exclusions" 설명
12292정성태8/20/202012176.NET Framework: 932. C# - ETW 관련 Win32 API 사용 예제 코드 (1)파일 다운로드2
12291정성태8/15/202011071오류 유형: 638. error 1297: Device driver does not install on any devices, use primitive driver if this is intended.
12290정성태8/11/202011792.NET Framework: 931. C# - IP 주소에 따른 국가별 위치 확인 [8]파일 다운로드1
12289정성태8/6/20209287개발 환경 구성: 502. Portainer에 윈도우 컨테이너를 등록하는 방법
12288정성태8/5/20209259오류 유형: 637. WCF - The protocol 'net.tcp' does not have an implementation of HostedTransportConfiguration type registered.
12287정성태8/5/20209754오류 유형: 636. C# - libdl.so를 DllImport로 연결 시 docker container 내에서 System.DllNotFoundException 예외 발생
12286정성태8/5/202010650개발 환경 구성: 501. .NET Core 용 container 이미지 만들 때 unzip이 필요한 경우
12285정성태8/4/202011045오류 유형: 635. 윈도우 10 업데이트 - 0xc1900209 [2]
12284정성태8/4/202010346디버깅 기술: 169. Hyper-V의 VM에 대한 메모리 덤프를 뜨는 방법
12283정성태8/3/202010819디버깅 기술: 168. windbg - 필터 드라이버 확인하는 확장 명령어(!fltkd) [2]
12282정성태8/2/20209590디버깅 기술: 167. windbg 디버깅 사례: AppDomain 간의 static 변수 사용으로 인한 crash (2)
12281정성태8/2/202012107개발 환경 구성: 500. (PDB 연결이 없는) DLL의 소스 코드 디버깅을 dotPeek 도구로 해결하는 방법
12280정성태8/2/202011278오류 유형: 634. 오라클 (평생) 무료 클라우드 VM 생성 후 SSH 접속 시 키 오류 발생 [2]
12279정성태7/29/202012128개발 환경 구성: 499. 닷넷에서 접근해보는 InterSystems의 Cache 데이터베이스파일 다운로드1
... 46  47  48  49  50  51  52  [53]  54  55  56  57  58  59  60  ...