Microsoft MVP성태의 닷넷 이야기
글쓴 사람
김기용 (galma73 at naver.com)
홈페이지
첨부 파일
 

안녕하십니까.
어제 코엑스에서의 세미나 잘들었습니다.
개인적으로 Q&A 시간에 질문을 드릴게 있었는데, 끝나고 그런 시간이 없어서 질문을 못드렸었습니다.

현재 ActiveX 마이그레이션 프로젝트를 수행중에 있습니다.
실제 운영중인 ActiveX인데, 간략한 구조는 이렇습니다.
ActiveX 에서 관리권한을 가지는 Broker 프로세스를 별도로 실행을 시킵니다.
그러니까 ActiveX는 UI(DHTML 다이얼로그)만 가지고 내부적인 로직은 Broker에게 맡겨버립니다.
그래서, 이 Broker 프로세스에게 높은 권한을 요하는 일을 시키고 있습니다.
이 Broker에는 라이브업데이트 기능이 포함되어 있는데, 일반적인 파일도 설치가 가능하고, 수행되는데 필요한 타사의 ActiveX도 설치를 할 수가 있습니다.(Cab배포를 내부적으로 처리합니다.)

이런 구조를 봤을 때 IE8에 마이그레이션 시키기 위해서 고려해야 될 사항을 나름대로 생각을 해보면.
1. DHTML 에 쓰이는 디자인(CSS, HTML, Javascript)을 브라우져에 맞게 분기를 시켜야 할거 같고,
2. "탭별 프로세스"는 자원 관련해서 검토를 해봐야될거 같고,
3. "사이트별 ActiveX" 에 대해 뭔가 처리를 해줘야 할 것으로 생각이 됩니다.
4. <object> 코드와 ActiveX 객체를 호출하는 메서드, 이벤트 와 관련해서 html 코드에서 수정해줘야 하는 부분이 있는지 검토

1번과 2번은 시간을 투자하면 답이 나올거 같습니다.
4번은 자료를 찾아봐도 주로 디자인 관련한 코드의 변경만이 나와있고, 실제 <object> 태그와 객체호출과 관련해서는 별 얘기가 없는거로 봐서 그냥 쓰면 되는것인지 알수가 없습니다.( 그냥 쓰면 될런지요? )

문제는 IE8의 "사이트별 ActiveX" 개념에서 원치 않은 동작이 일어날 것으로 생각이 됩니다.
기존 IE7 까지는 일부 PC에서 타사 ActiveX가 설치된 이후에 설치된 ActiveX가 실행되어야 하는 DHTML 다이얼로그에서 상단에 "실행시키겠냐.." 란 노란박스가 떠서 이 문제를 해결하기 위해, Broker 프로세스가 실행될 때 DHTML 페이지를 신뢰사이트로 추가하기 위해 "about:internet" 를 신뢰 사이트로 추가해주는 작업을 해주어서 해결을 하였었습니다.

하지만, IE8이 등장하면서 "이 사이트에서 해당 ActiveX를 실행시킬테냐.." 란 메시지가 뜨게 되므로, 현재 구조가 바로 적용이 되지는 않게 된 것입니다.

그래서, 타사의 ActiveX를 설치할 때 이 ActiveX 자체를 모든 사이트에서 실행되도록 바로 지정을 해주고 싶은데, 그 방법을 찾을 수가 없습니다.

이런 방법이 없다면 타사 ActiveX 설치창하고 실제 동작하는 DHTML 다이얼로그 사이에 창을 하나 더 둬서 "모든 사이트에서 실행"을 선택하도록 유도를 해야될거 같은데 이렇게 하면 좀 복잡해질거 같습니다..(정 방법이 없다면 이 방법을 쓸까 합니다.)

혹시 이런 방법은 없는것인지요?
조언을 부탁드립니다.
제가 어제 세미나 들은것과 이것저것 자료조사를 통해서 구상한게 위의 1,2,3 정도인데, 혹시 더 고려해야될 사항은 있는지도 조언 부탁드립니다.

김기용 드림.












[최초 등록일: ]
[최종 수정일: 3/12/2009]


비밀번호

댓글 작성자
 



2009-03-13 10시09분
사실, IE 관련한 것이 ^^ 직접 해봐야 "확실히" 답변할 수 있는 것들이 많죠. 일단 해보지는 않았지만 제가 알고 있는 지식내에서 답변 드리겠습니다.

1. 번은 2번째 세션에서 들으신 대로 하시면 되겠습니다. 세밀하게 기능을 쓰지 않은 한도 내에서는 아마도 많은 문제는 없을 거라 봅니다.

2. 예. 이 부분은 살펴 보셔야 하고요.

3. 이 부분이 테스트가 된 것인가요? 제 생각에는 관리 브로커 프로세스에서 임의로 설치하는 ActiveX에 대해서 사이트 전용으로할당되게 URL이 지정될 것 같지는 않은데요. 왜냐 하면 해당 브로커 프로세스에는 어떠한 URL정보도 없기 때문입니다.

4. 제가 아는 한, Object 와 호출/이벤트에 대해서는 바뀐 것이 없습니다. 따라서 기존 처럼 그냥 사용해도 되지 않을까 싶은데요. ^^





kevin25
2009-03-13 10시28분
[김기용] 답변 감사드립니다.
3번을 좀 상세히 설명드리면, 업데이트 프로그램(관리권한으로 실행됨)이 일반 파일은 서버로부터 다운받아서 적절한 위치에 복사/등록 하는 역할을 하고, ActiveX 설치는 특정한 형식( <object> 태그를 담고 있고, Object 객체 생성이 성공을 하면 Dhtml 다이얼로그에게 성공 이벤트를 날리는 구조 )을 갖는 페이지를 Dhtml Dialog에 띄우는 식으로 해서 Cab 설치를 하게 됩니다.
업데이트 프로그램에서는 ActiveX 설치페이지의 Url을 미리 알고 있는 것입니다.
그래서, ActiveX의 클래스아이디라든지 관련 정보를 알고 있는 상태이고, 관리자 권한으로 수행되고 있는 상태인데, 사람이 일일이 "전체 사이트에서 수행되도록 함" 이란것을 선택하지 않아도, 코드상으로 지정해줄수 있지 않을까 해서 조언을 구하고자 질문을 드렸습니다.
( 그러니까 제 ActiveX에서 타사의 ActiveX를 호출하는데, Dhtml Dialog 상에서 명령들이 일어나는데, 상단에 "전체 사이트에서 수행할래.." 란 원치 않은 동작이 일어나버리니까 해결방안을 찾고 있는 것입니다. )
다시한번 조언을 부탁드립니다.

김기용 드림.

 
[guest]
2009-03-13 11시11분
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\...[CLSID]...\iexplore\AllowedDomains\*

위와 같은 키를 생성해 주시면 되겠습니다. (아마도 API상으로 지원이 될지는 모르겠지만. ^^)
kevin25
2009-03-13 12시25분
[김기용] 아 정말 감사합니다.
많은 도움을 받았습니다.
꾸벅..

[guest]

... 16  17  18  19  20  21  22  23  24  25  26  27  [28]  29  30  ...
NoWriterDateCnt.TitleFile(s)
51837/2/20198170.NET Compact Freamwork 컨트롤러 더블버퍼링 [1]
5182wpf ...7/2/20198294wpf 질문 드립니다. [1]파일 다운로드1
51817/1/20198743DataGridview Doublebuffer 에 대해서 질문드립니다. [2]
5180김대훈6/25/20198749배열과 반복문에서 질문드립니다 [2]
5177농상6/13/20199979멀티스레드 건의 [2]
5176이선호6/13/20199545안녕하세요. 닷넷 문제로 검색하다 알게되어 들어왔습니다. 현재 IIS 문제가 있어 질문드립니다. [1]
5175Chobo6/12/20199466WPF Ellipse 그리기! [3]
5174농상6/11/20198771ThreadPool 조인에 관해 [1]
5173전우치6/9/20199355공유 리소스에 대한 스레드 동기화 처리를 위해서 lock 이용 시 문의 [3]
5172김대훈6/7/20198187너무힘드네요 공부에 대한조언부탁드립니다 [2]
5171조남석6/4/20197864EX)11-2(treeview)에 대한 질문입니다. [3]
5170레리6/4/20198476Setup 프로젝트 레지스트리 설정 관련 질문입니다. [1]파일 다운로드1
5169농상6/3/20198275멀티스레드 파라미터 관련 [2]
5168익명유저5/30/20197554항상 정말 감사드립니다... [1]
5167WPF5/23/20198456질문드립니다. [1]
5165이대희5/22/20197612Visual Studio 설치 구성요소 문의 (C# 7.3 개정판 관련) [1]
5164레드5/21/20199135실행 과정과 실행파일 디버그 시 Icon변경 질문드립니다. [5]
5163이대희5/20/20197434시작하세요 C# 7.3 프로그래밍 책 도착했습니다. [1]
5162채홍윤5/14/201910270Mono Develop window 설치 [6]
5161정대영5/13/20198113VS 2013에서 C#6.0(.netFramwork 4.6.1) $ 디버깅 오류 [1]
5160초보개발자5/13/20199123wcf 관련 국내 서적 살만한 책이 있나요? [2]
5159sdh25/9/20198674VS 2010 버전에서 생성한 DLL을 VS 2017버전에서 실행 시 에러 [2]
5158sdh5/8/20197582Visual studio 2010 버전에서 생성한 Project를 Visual studio 2017버전에서 실행에러 [1]
5157김경훈5/8/201910476Task 만들때 넘겨주는 CancellationToken은 어디서 사용 되는 건가요? [4]
5156rysoo5/8/20198734yield return의 리턴 타입 질문 드립니다. [4]
5155세퉁5/7/201910748관리자 권한으로 실행 시 알림창(?) 없이 바로 실행 시킬 수 있는 방법이 있을까요?? [2]파일 다운로드1
... 16  17  18  19  20  21  22  23  24  25  26  27  [28]  29  30  ...