Microsoft MVP성태의 닷넷 이야기
오류 유형: 55. Windowless ActiveX controls are not supported [링크 복사], [링크+제목 복사],
조회: 19309
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)


Windowless ActiveX controls are not supported


현상은 간단했습니다.

3rd-party 컨트롤을 WinForm에 올려놓았는데, 아래와 같이 EndInit 메서드 실행에서 예외가 발생하였습니다.

private void InitializeComponent()
{
  ; 생략
  ((System.ComponentModel.ISupportInitialize)(this.axXObject1)).EndInit(); // 예외 발생  
	this.ResumeLayout( false );  
}

"System.Reflection.TargetInvocationException: Unable to get the window
handle for the '<ActiveX name>' control. Windowless ActiveX controls are not
supported. ---> System.NullReferenceException: Object reference not set to
an instance of an object."

물론, 애당초 해당 컨트롤을 Windowsless 모드로 제작된 경우도 있을 수 있겠지만, 위에서 제가 사용한 컨트롤은 분명한 Windowed 컨트롤이었습니다. 오호... 이거 고민입니다. ^^;

이상한 것은, Visual Studio 2005에서는 정상적으로 동작하는데, 2008로 빌드하고 실행시키면 그와 같은 오류가 발생하였습니다.

어쩌겠습니까? 웹을 검색해 봐야지. ^^

검색을 해도... 사실 딱히 별다른 원인이 있어보이진 않았습니다. 어떤 이는 AutoScaleMode를 None으로 설정하라고 하고.

그러다, 보게 된 것. "DEP" 기능을 꺼보라는 것입니다. 휴... 어쩔 수 없군요. 지푸라기라도 잡고 싶은 심정에서 시도를 해보았습니다. 참고로, Vista에서는 boot.ini 설정이 지원되지 않기 때문에 아래와 같이 bcdedit.exe를 이용하셔야 합니다.

bcdedit.exe /set {current} nx AlwaysOff

당연히, "Run as administrator"로 띄운 명령행 대화창에서 실행시켜야 합니다.

결과는... ^^; OK입니다. DEP를 끄고 나니 정상적으로 ActiveX가 활성화되었습니다.




그 외에 다음과 같은 토픽도 있습니다. 이런 걸로 봐서는, 해당 오류가 다양한 원인에 의해서 발생하는 것으로 보인다는.

"Windowless ActiveX controls are not supported"...
and how to fix it
; http://www.petedavis.net/MySite/DynPageView.aspx?pageid=21



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

[연관 글]






[최초 등록일: ]
[최종 수정일: 6/11/2021]

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

비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  8  [9]  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
13409정성태9/8/20233911닷넷: 2140. C# - Win32 API를 이용한 모니터 전원 끄기
13408정성태9/5/20233875Windows: 251. 임의로 만든 EXE 파일을 포함한 ZIP 파일의 압축을 해제할 때 Windows Defender에 의해 삭제되는 경우
13407정성태9/4/20233606닷넷: 2139. C# - ParallelEnumerable을 이용한 IEnumerable에 대한 병렬 처리
13406정성태9/4/20233587VS.NET IDE: 186. Visual Studio Community 버전의 라이선스
13405정성태9/3/20234013닷넷: 2138. C# - async 메서드 호출 원칙
13404정성태8/29/20233579오류 유형: 876. Windows - 키보드의 등호(=, Equals sign) 키가 눌리지 않는 경우
13403정성태8/21/20233376오류 유형: 875. The following signatures couldn't be verified because the public key is not available: NO_PUBKEY EB3E94ADBE1229CF
13402정성태8/20/20233465닷넷: 2137. ILSpy의 nuget 라이브러리 버전 - ICSharpCode.Decompiler
13401정성태8/19/20233704닷넷: 2136. .NET 5+ 환경에서 P/Invoke의 성능을 높이기 위한 SuppressGCTransition 특성 [1]
13400정성태8/10/20233535오류 유형: 874. 파이썬 - pymssql을 윈도우 환경에서 설치 불가
13399정성태8/9/20233491닷넷: 2135. C# - 지역 변수로 이해하는 메서드 매개변수의 값/참조 전달
13398정성태8/3/20234329스크립트: 55. 파이썬 - pyodbc를 이용한 SQL Server 연결 사용법
13397정성태7/23/20233821닷넷: 2134. C# - 문자열 연결 시 string.Create를 이용한 GC 할당 최소화
13396정성태7/22/20233583스크립트: 54. 파이썬 pystack 소개 - 메모리 덤프로부터 콜 스택 열거
13395정성태7/20/20233477개발 환경 구성: 685. 로컬에서 개발 중인 ASP.NET Core/5+ 웹 사이트에 대해 localhost 이외의 호스트 이름으로 접근하는 방법
13394정성태7/16/20233437오류 유형: 873. Oracle.ManagedDataAccess.Client - 쿼리 수행 시 System.InvalidOperationException
13393정성태7/16/20233610닷넷: 2133. C# - Oracle 데이터베이스의 Sleep 쿼리 실행하는 방법
13392정성태7/16/20233505오류 유형: 872. Oracle - ORA-01031: insufficient privileges
13391정성태7/14/20233541닷넷: 2132. C# - sealed 클래스의 메서드를 callback 호출했을 때 인라인 처리가 될까요?
13390정성태7/12/20233481스크립트: 53. 파이썬 - localhost 호출 시의 hang 현상
13389정성태7/5/20233526개발 환경 구성: 684. IIS Express로 호스팅하는 웹을 WSL 환경에서 접근하는 방법
13388정성태7/3/20233653오류 유형: 871. 윈도우 탐색기에서 열리지 않는 zip 파일 - The Compressed (zipped) Folder '[...].zip' is invalid. [1]파일 다운로드1
13387정성태6/28/20233721오류 유형: 870. _mysql - Commands out of sync; you can't run this command now
13386정성태6/27/20233778Linux: 61. docker - 원격 제어를 위한 TCP 바인딩 추가
13385정성태6/27/20233979Linux: 60. Linux - 외부에서의 접속을 허용하기 위한 TCP 포트 여는 방법
13384정성태6/26/20233707.NET Framework: 2131. C# - Source Generator로 해결하는 enum 박싱 문제파일 다운로드1
1  2  3  4  5  6  7  8  [9]  10  11  12  13  14  15  ...