Microsoft MVP성태의 닷넷 이야기
COM 개체 관련: 18. Internet Explorer는 Out-of-process COM 개체입니다. [링크 복사], [링크+제목 복사],
조회: 22285
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

인터넷 익스플로러에 대해서 IWebBrowser2 인터페이스로만 유명해져 있는데, IE 컨테이너 자체가 EXE 유형의 COM 개체라는 것을 많은 분들이 모르시는 것 같습니다.

IE를 Process.Start로 띄우는 것도 가능하겠지만, IE COM 개체 생성을 해서 직접 제어하는 것도 가능합니다.

아래의 화면은 실제로 VS.NET 2005에서 "Microsoft Internet Controls"에 대해서 참조를 추가한 화면입니다.
(참조 추가 대화창에서 C:\Windows\system32\shdocvw.dll을 직접 추가하는 것도 가능합니다.)
Microsoft Internet Controls

일단, 참조를 추가한 후 사용하는 코드 예는 다음과 같습니다.
            SHDocVw.InternetExplorer ie = new SHDocVw.InternetExplorer();
            object obj = null;
            ie.Navigate("https://www.sysnet.pe.kr", ref obj, ref obj, ref obj, ref obj);
            ie.Visible = true;


따라서, SHDocVw.InternetExplorer에서 제공해주는 여러 가지 메서드/속성/이벤트를 여느 COM 개체와 다름없이 사용할 수가 있습니다.

원한다면 위의 코드에서 ie.Visible = true로 설정하기 전에 Internet Explorer COM 개체가 노출시켜주는 여러 가지 속성을 설정해주는 것도 가능합니다. 예를 들어, 메뉴 바를 감춘다든지, 툴바를 없앤다든지, 응용 프로그램의 크기를 조절한다든지 하는 것등입니다.

InternetExplorer Object
; http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/webbrowser/reference/objects/internetexplorer.asp

위의 URL에서 "Properties"를 선택하시면 설정할 수 있는 다양한 속성들을 확인할 수 있습니다.






[최초 등록일: ]
[최종 수정일: 7/1/2021]

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

비밀번호

댓글 작성자
 




... 121  122  123  124  125  126  127  128  129  130  131  132  [133]  134  135  ...
NoWriterDateCnt.TitleFile(s)
1763정성태9/30/201425198.NET Framework: 468. PDB 파일을 연동해 소스 코드 라인 정보를 알아내는 방법파일 다운로드1
1762정성태9/30/201426031.NET Framework: 467. 닷넷에서 EIP/RIP 레지스터 값을 구하는 방법 [1]파일 다운로드1
1761정성태9/29/201423131.NET Framework: 466. 윈도우 운영체제의 보안 그룹 이름 및 설명 문자열을 바꾸는 방법파일 다운로드1
1760정성태9/28/201421140.NET Framework: 465. ICorProfilerInfo::GetILToNativeMapping 메서드가 0x80131358을 반환하는 경우
1759정성태9/27/201432484개발 환경 구성: 240. Visual C++ / x64 환경에서 inline-assembly를 매크로 어셈블리로 대체하는 방법파일 다운로드1
1758정성태9/23/201439077개발 환경 구성: 239. 원격 데스크톱 접속(RDP)을 기존의 콘솔 모드처럼 사용하는 방법 [1]
1757정성태9/23/201419686오류 유형: 242. Lync로 모임 참여 시 소리만 들리지 않는 경우 - 두 번째 이야기
1756정성태9/23/201428813기타: 48. NVidia 제품의 과다한 디스크 사용 [2]
1755정성태9/22/201435639오류 유형: 241. Unity Web Player를 설치해도 여전히 설치하라는 화면이 나오는 경우 [4]
1754정성태9/22/201425951VC++: 80. 내 컴퓨터에서 C++ AMP 코드가 실행이 될까요? [1]
1753정성태9/22/201421758오류 유형: 240. Lync로 세미나 참여 시 소리만 들리지 않는 경우 [1]
1752정성태9/21/201441927Windows: 100. 윈도우 8 - RDP 연결을 이용해 VNC처럼 사용자 로그온 화면을 공유하는 방법 [5]
1751정성태9/20/201440048.NET Framework: 464. 프로세스 간 통신 시 소켓 필요 없이 간단하게 Pipe를 열어 통신하는 방법 [1]파일 다운로드1
1750정성태9/20/201425285.NET Framework: 463. PInvoke 호출을 이용한 비동기 파일 작업파일 다운로드1
1749정성태9/20/201425028.NET Framework: 462. 커널 객체를 위한 null DACL 생성 방법파일 다운로드1
1748정성태9/19/201426568개발 환경 구성: 238. [Synergy] 여러 컴퓨터에서 키보드, 마우스 공유
1747정성태9/19/201429809오류 유형: 239. psexec 실행 오류 - The system cannot find the file specified.
1746정성태9/18/201426767.NET Framework: 461. .NET EXE 파일을 닷넷 프레임워크 버전에 상관없이 실행할 수 있을까요? - 두 번째 이야기 [6]파일 다운로드1
1745정성태9/17/201424316개발 환경 구성: 237. 리눅스 Integration Services 버전 업그레이드 하는 방법 [1]
1744정성태9/17/201432233.NET Framework: 460. GetTickCount / GetTickCount64와 0x7FFE0000 주솟값 [4]파일 다운로드1
1743정성태9/16/201422048오류 유형: 238. 설치 오류 - Failed to get size of pseudo bundle
1742정성태8/27/201428385개발 환경 구성: 236. Hyper-V에 설치한 리눅스 VM의 VHD 크기 늘리는 방법 [2]
1741정성태8/26/201422476.NET Framework: 459. GetModuleHandleEx로 알아보는 .NET 메서드의 DLL 모듈 관계파일 다운로드1
1740정성태8/25/201433865.NET Framework: 458. 닷넷 GC가 순환 참조를 해제할 수 있을까요? [2]파일 다운로드1
1739정성태8/24/201427692.NET Framework: 457. 교착상태(Dead-lock) 해결 방법 - Lock Leveling [2]파일 다운로드1
1738정성태8/23/201423386.NET Framework: 456. C# - CAS를 이용한 Lock 래퍼 클래스파일 다운로드1
... 121  122  123  124  125  126  127  128  129  130  131  132  [133]  134  135  ...