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]

1  2  3  4  5  6  7  8  [9]  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5730김재환10/7/20224649WPF에서 디스플레이 배율이 100%가 아닌 경우, Window의 포지션 정보가 부정확해지는 문제 [2]
5729김기헌10/2/20224320안녕하세요 선생님 뮤텍스 관련 질문 드립니다 [2]
5728김경환9/29/20224382그리드뷰관련마지막질문하나드리겠습니다선생님 [5]파일 다운로드1
5727김경환9/26/20224289c# 윈폼 tcp/ip 기반 데이터그리드뷰질문하나드리겟습니다 [3]
5726양승조 donator9/22/20225025C# dll 과 C++ 간 배열 전달. SafeArray [10]파일 다운로드1
5725김기헌9/21/20223895안녕하세요 선생님 윈폼 컨트롤 Dispose 관련 질문드립니다 [2]
5724감사합니...9/19/20223923스레드와 스레드 안전한 객체 사용관련 문의드립니다. [5]
5723드리렁9/13/20223850Pinned Object에 대해서 질문이 있습니다. [2]
5722김인태9/8/20224017대화상자에서 alt + tab 후킹 작업 [1]
5721우종9/7/20224187C++ DLL 과 C# 연동 문의 [2]
5720한예지 donator9/6/20223869학습 방법 질문 있습니다. [7]
5719김경한9/6/20224203안녕하세요 질문하나만드리겠습니다...! [10]
5718김민아9/2/20224261안녕하세요 생성자 호출 시 초기화 순서 질문드립니다 [2]
5716iili...8/26/20224424WinDbg 커널 디버깅에서의 thread freeze [2]
5715에릭8/19/20224855WMI 쿼리 결과값이 Windows Service와 Console 출력에서 상이한 이유가 있을까요? [9]파일 다운로드1
5714허니빠8/18/20224886.net6 hint path 를 프로젝트 단위로 지정할 수 있는 방법을 알고싶습니다 [8]
5713김기헌8/17/20224815안녕하세요 rgb 계산 오차가 있는데 원인을 모르겠습니다.. [3]
5712하태8/17/20224280안녕하세요 background service에서 user32dll 접근 질문 드리겠습니다.! [2]
5711하태8/16/20223778안녕하세요! 윈도우즈 해상도 관련 질문 드립니다. [1]
5710장성욱8/12/20223995c# 시리얼 통신 관련 질문 [3]
5709초보8/12/20223801WPF 커맨드 관련 질문 [2]
5708민성8/11/20224070안녕하세요 c#에서 화면의 배율 및 레이아웃을 변경할려면 어떻게 해야 할까요? [2]파일 다운로드1
5707민성8/10/20223715WPF 엣지 컨트롤에서 화면이 안보이는 현상 [2]파일 다운로드1
5706종규8/7/20226166WPF 에서 SVG 아이콘 사용 방법 문의 [2]
5705김기헌8/6/20224844안녕하세요 선생님 싱글톤 패턴 간단 질문 [2]
5704따봉이8/4/20224729EventHandler 관련 [1]
1  2  3  4  5  6  7  8  [9]  10  11  12  13  14  15  ...