천객만래 [千客萬來] (It has an interminable succession of visitors)

[작업] IE + Chrome => 주소창+검색창 어플리케이션 목업 작성중


일주일에 3~4일의 작업기간중에 작업을 하느라 생각보다 늦기는 했지만..

처음에 크롬 확장프로그램을 만드는 것에서 최신버전에서의 보안강화로

사용자가 직접 확장프로그램을 설치해야만 작동가능하다는 것 때문에

크롬 확장프로그램은 다음을 기약하기로 했다. 나중에 기회가 된다면

다른 기능들과 함께 만들수도 있겠지만 사용자가 직접 설치해야만 한다는 것이

크리티컬한 제약사항이라 방법을 선회했다.


따라서, 번들 배포를 이용한 다운로드한 프로그램의 사용자 동의에 따라 설치가 되므로 

더 많은 배포를 할 수 있게 된다. 그리고 기존의 인터넷 익스플로러에서만 키워드를

추출하는 방식에서 벗어나 한국에서는 20%이상의 검색 점유율을 갖는 구글 크롬을

추가하여 키워드 추출율을 높였다는 것이 기존의 상품보다 장점이라고 할 수 있다.


즉, 정상적으로 크롬 확장프로그램으로서의 작동하는 주소창, 검색창 후킹이 아니라

윈도우즈 시스템 메시지를 이용한 후킹으로 크롬에서 오고가는 메시지 정보를 

들여다보고 주소창, 검색창 기능을 완성하고  엔딩팝업과 팝언더 기능을 적용하였다.

여기에 토스트 팝업(배너) 기능을 추가할까 한다.


키워드 추출은 IE + Chrome 

광고 노출은 팝언더 + 엔딩팝업(후팝업) + 토스트배너(팝업)


이렇게 구성된 어플리케이션을 완성하고 상품화 할까 한다.






Posted by SB패밀리

인터넷 익스플로러 없이 인터넷 뱅킹을 한다 - IE TabMulti


또한 인터넷 익스플로러에서만 가능했던 인터넷 결제를 한다.


인터넷 익스플로러를 사용하면 악성코드 프로그램이나 느려지는 현상, 또는 광고 창이 나타나서 

사용하기가 꺼려지는 분들에게는 희소식입니다.

꼭 인터넷 뱅킹을 하려고 하면 인터넷 익스플로러, 그것도 32bit 인터넷 익스플로러를 사용해야 하는 것이 안타깝습니다.

우리나라에만 있는 보안 규정 때문에 이렇게 된 것인데요.

우리나라는 보안관련 프로그램이 각 사이트에 있는 것이 아니라 개개인의 PC에 설치되기 때문에

보안에 좀 더 취약하게 된다는 것입니다.


그럼 인터넷 익스플로러 없이도 인터넷 뱅킹을 사용하는 방법은 무엇인가 하면


속도가 빠른 구글 크롬을 사용하는 것입니다. 

이것도 크롬을 그냥 사용하게 되면 인터넷 뱅킹이 거의 불가능 합니다.

이 때 구글 웹 스토어에서 확장 프로그램 "IE Tab Multi"를 검색해서 설치를 합니다.





이 "IE Tab Multi"라는 확장 프로그램을 설치하고 나면 크롬 브라우저 우측에 eIPA라는 아이콘이 등록됩니다.




위에서 표시된 아이콘을 클릭하면 "IE Tab Multi"가 실행되면서 웹페이지 상단 영역에 URL주소창이 추가됩니다.

이제 "IE Tab Multi"가 실행되어 인터넷 뱅킹이 가능하게 됩니다.




브라우저의 상단의 URL 주소창이나 뒤로, 앞으로 버튼을 클릭해서 이동하지 말고 웹페이지 상단의 작은 탐색 아이콘과 주소창을 이용하면 인터넷 뱅킹이나 그 밖의 인터넷 결제가 가능합니다.





Posted by SB패밀리

국내 브라우저별 점유율 : 아직 IE가 85% 이상의 점유율을 보여주고 있다.

Source: StatCounter Global Stats - Browser Market Share



Source: StatCounter Global Stats - Browser Version Market Share



Source: StatCounter Global Stats - Browser Market Share



Source: StatCounter Global Stats - Browser Version Market Share


2010년12월과 2012년12월




Posted by SB패밀리

인터넷 익스플로러에서 세션, 쿠키 공유하지 않기


IE 8의 경우는 session, cookie가 공유되는 현상이 있습니다.


이를 공유하지 않기 위해서는 아래와 같은 방법을 사용하면 됩니다.


레지스트리 설정

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main

SessionMering=0 (DWORD:32)

FrameMerging=0 (DWORD:32)


그 다음으로는 


C:\Program Files\Internet Explorer\iexplore.exe" -nomerge


위와 같은 파라메터 옵션을 추가합니다.






[출처] IE 8 쿠키 레셰어링|작성자 푸하하


Posted by SB패밀리

[IT/컴퓨터] 인터넷 익스플로러 속도향상 플러그인


internet explorer를 이용중에.. 점점 느려지는 인터넷 익스플로러를 접하게 된다.

레지스트리 설정변경, 캐시지우기 등의 여러가지 방법이 있지만 여기서는

구글에서 내놓은 인터넷 익스플로러 무료 플러그인에 대해서 알아보자.


구글 크롬 프레임(Chrome Frame)


http://www.google.com/chromeframe


위의 사이트를 접속해보자.


약간의 설명과 함께... 설치 선택 활성화 버튼이 있다. 클릭하자.




다음 화면에서는 서비스 약관 동의다. 선택 체크하고 동의버튼을 클릭하자.




플러그인 진행동안은 아래와 같은 메세지를 출력한다.




프레임 설치 완료 메세지와 함께 설치가 완료되었다.





그럼 설치된 플러그인을 확인해보자. 인터넷 익스플로러 도구메뉴에 있는 추가기능관리 메뉴를 선택하자.






Google Inc 내에서 Chrome Frame이 등록되어 사용가능 상태로 되어 있는 것을 확인할 수 있습니다.





이제 남은 과제는 빨라진 인터넷 익스플로러를 체감하는 것이다... 익스플로러를 껏다가 실행해 보자.

우리 모두 더 나은 인터넷 생활을 위해서~

Posted by SB패밀리

[개인] 인터넷 익스플로러의 즐기찾기 및 사이드바의 위치


인터넷 익스플로러의 즐겨찾기 위치는 왜 왼쪽에만 있을까?

오른쪽이나 하단에 있으면 안되는 걸까?

선택가능한 UX가 되면 좋겠다.

오른쪽에 있으니. 개인적으로는 불편하다.




Posted by SB패밀리

[속보]"초비상! 무조건 IE9이나 IE8 깔겠다"

13일부터 한국서도 강제 업데이트 시작

오는 13일부터는 한국에서도 인터넷 익스플로러(IE)의 강제 업데이트가 시작되는 것으로 확인돼 업계에 비상이 걸렸다. 당장 IE8이나 IE9에 호환되지 않는 서비스를 운영하는 업체나 기업 인트라넷 입장에서는 강제 업데이트를 임시로 막거나, 최신 IE환경에 맞게 서비스 개선이 시급한 상황이다.



테크트렌드팀이 1일 확인한 자료에 따르면, 한국MS는 지난달 27일 고객사에 보낸 공문을 통해 인터넷 익스플로러의 강제 업데이트를 진행할 계획이라고 알린 것으로 밝혀졌다. 이에 따라 윈도XP 사용자 중 IE6와 IE7 사용자는 IE8로 자동 업데이트가 되고, 윈도7 사용자 중 IE8 사용자는 IE9으로 자동 업데이트 된다.

한국MS 측은 "HTML5 등 웹표준 지원 및 보안 기능이 상대적으로 취약한 오래된 IE 버전에 대한 개선조치의 일환"이라고 설명했다.

다만, 13일에 당장 모든 사용자들이 IE8이나 IE9 화면을 봐야 하는 것은 아니다. 약 6개월에 걸쳐 점차적으로 확대할 계획이라는 설명.

◆뭐가 달라지나 = 기존에 윈도 자동 업데이트시에는 IE 업데이트는 사용자들에게 '선택'을 반드시 묻고 이를 고를 수 있도록 했다. 따라서 IE8이나 IE9을 사용하기 싫으면 계속 업데이트 거부를 유지할 수 있었던 것. 그러나 이번에 적용되는 자동 업데이트 정책은, 기존 IE업그레이드를 거부한 적이 없는 모든 사용자들을 대상으로 일괄 적용된다. 한마디로 대부분의 컴퓨터들이 IE8이나 IE9으로 바뀌게 된다는 의미다.

MS는 "다만, 기업 고객의 경우 'IE8-IE9 Blocker Toolkit'을 통해 IE 업데이트를 사전에 차단할 수 있다"고 덧붙였다.

>당초 MS본사 공식공지 http://windowsteamblog.com/ie/b/ie/archive/2011/12/15/ie-to-start-automatic-upgrades-across-windows-xp-windows-vista-and-windows-7.aspx

[공문 전문]

안녕하세요.

한국마이크로소프트 입니다.

Internet Explorer 자동 업데이트 관련 안내 공문 보내 드립니다.

마이크로소프트는HTML5 등 웹표준 지원 및 보안 기능이 상대적으로 취약한 오래된 Internet Explorer(이하, IE) 버전에 대한 개선조치의 일환으로 Windows 자동 업데이트 기능을 통한 Internet Explorer 8(이하, IE8) 및 Internet Explorer 9(이하, IE9)의 자동 배포를 오는 2012년 2월 13일부터 진행하게 되었습니다.

금번IE 자동 배포는 국내 인터넷 사용자들이HTML5 등 새로운 웹표준을 포괄적으로 지원하며 보안이 강화된 최신 버전의 IE를 사용하도록 유도하기 위한 목적으로 이루어지고 있습니다. 하지만 IE 자동배포는 IE8 또는 IE9이 아닌 버전으로 작성된 웹사이트가 현재와는 다르게 표시되거나 장애를 유발할 가능성을 전혀 배제할 수 없기 때문에 이러한 오류를 미연에 방지하고자 첨부와 같이 IE8 및 IE9의Windows 자동 업데이트 일정과 준비에 필요한 가이드를 제공하오니 귀사의 업무에 참고하시기 바랍니다.

특히, HTML5 등 새로운 웹표준 적용을 위해 IE9 도입을 고려하신다면, IE9 환경 하에서의 테스트를 통해 호환성 여부를 먼저 확인하시길 권해 드립니다.

이하 자세한 사항은 첨부해드리는 공문 참조 부탁 드립니다.

감사합니다.

1. 배경:

HTML5 등 웹표준 지원 및 보안 기능이 상대적으로 취약한 오래된 IE 버전에 대한 개선조치의 일환으로

Windows 자동 업데이트 기능을 통해 IE8 및IE9의 자동 배포가 이루어질 예정입니다.

- Windows XP에서 IE6/IE7사용자: IE8으로 자동 업데이트

- Windows 7에서 IE8 사용자: IE9으로 자동 업데이트

2. 시기: 2012년 2월 13일부터 시작될 예정이며, 약 6개월에 걸쳐 점차적으로 확대될 예정입니다. (날짜는 변경될 수도 있음)

3. 특이사항:

1) 기존 Windows 자동 업데이트 시에는 IE 업데이트에 대해 사용자의 선택을 물었으나,

이번 Windows 자동 업데이트에서는 기존에 IE 업그레이드를 거부한 적이 없는 모든 사용자를 대상으로 일괄 적용될 예정입니다.

2) 기업 고객의 경우 IE8 / IE9 Blocker Toolkit을 통해 IE 업데이트를 사전에 차단할 수 있습니다. (사전 차단 방법 안내_공문 참조) <끝>

Posted by SB패밀리
[작업] Internet Explorer 주소창 검색 기술 개발

얼마전 인터넷 익스플로러어 주소검색창에서 키워드를 입력하면 검색엔진을 이용하여 사용자에게 유익한 검색결과를 보여주는 프로그램을 제작했다.

여기서, 단지 주소창 검색은 쉬워보였었다. 연초에 만들어 보았더니 쉽게 되어서 별거 아니구나 했었는데 이번에 개발하는데 무지어려웠다.

이미 공개된 소스들로는 로직만 사용될 정도였다. 제대로 구현되지 않아서는 세상에 공개할 수 없는 작품이었다.

윈도우즈 7이 나오면서 무지 어려워진것이다.
그리고 IE 버전별로 이렇게 동작과 구성이 다를줄 몰랐다. 결국 win xp와 win 7기반에서 IE버전별로 모조리 분석을 했다.

여러차례의 시행착오를 거쳤다. 그리고 결국 만들어 냈다. 그런데, win 7 ultimate 버전이 말썽이었다. BHO로 동작하면서 win 7의 UAC에 막혀서 고전을 했다.

하지만 이것도 결국 이겨냈다.
그래서 IE 6~9 모든 버전과 win xp, win 7 모두에서 주소창 검색이 동작하는 주소창 검색 솔루션을 만들었다.

추석연휴까지 반납했었는데...
된다고 믿었고 나 하나가 아닌 함께하는 사람들을 떠올리면서 이루어낸 것이라 생각했다.

추석에 못 찾아뵌 가족들은 이후 찾아뵈었다.
이 성과물이 나와 함께하는 분들에게 좋은 결과를 가져다 줄 것이라 믿는다.

많이 도와준 분들도 약간 도와준 분들도 나에게 모두 고마운 분들이다. 고마운 마음으로 계속해 나갈 것이다.
Posted by SB패밀리

[IT/과학] 구글 사용자가 익스플로러보다 평균 IQ 30 높아

머니투데이 기사 타이틀에 이런 글을 보았다. 구글 사용자가 익스플로러 사용자보다 IQ가 높다니
이건 무슨 의미인지, 아니 무슨 근거인지 말이다.

근거는 실제 근거인데... 명확하다고는 할 수 없는. 뭐.. 혈액형 성격과도 비슷하다고나 할까?


영국 BBC는 캐나다 지능심리측정 컨설팅 회사 앱티콴트(Aptiquant)가 발표한 보고서를 인용, 브라우저 사용자 중 익스플로러(IE) 사용자들의 지능지수(IQ)가 가장 낮다고 전했다.

이 연구는 인터넷 브라우저를 사용하는 10만명을 대상 한 온라인 설문조사 결과이다.

연구 결과 익스플로러 사용자의 IQ는 80으로 전체 평균보다 낮은 아이큐를 보였다. 카미노와 오페라 사용자는 평균 IQ 120으로 가장 높았고 파이어폭스, 구글 크롬 프레임 사용자의 IQ는 110이라고 밝혔다.

또한 익스플로러 사용자들 중에서도 버전에 따른 지능지수가 차이를 나타냈다. IQ가 높은 순서로 IE8, IE9, IE7,IE6순서이며 IE6 사용자의 평균 IQ는 80으로 가장 낮았다.

앱티콴트 관계자는 "IQ가 높을 수록 변화에 적극적이라는 의미"라며 "IQ가 낮은 사람은 운영체제를 바꾸는데 소극적이라는 것이지 지능 자체가 낮다는 것은 아니다"라고 말했다.

Posted by SB패밀리

인터넷 익스플로러 열어본 페이지 목록 확인할 수 있는 곳

정확히 말하면 URL 입력해서 접속해 본 사이트

레지스트리

HKEY_CURRENT_USER -> Software -> Microsoft -> Internet Explorer -> TypedURLs ->
Posted by SB패밀리

IE 검색공급자 확장성

Search Provider Extensibility in Internet Explorer

Starting with Windows Internet Explorer 7, the Instant Search box provides an AutoComplete feature so users can search for similar search terms used in previous searches. Internet Explorer 7 also enables users to add multiple search providers. Search improvements in Internet Explorer 8 focus on helping users search by significantly improving the Instant Search box drop-down menu and supporting search suggestions.
This topic addresses two audiences: end users and Web site developers. The first part of this topic focuses on helping end users install search providers, manage search providers, and use a search provider to find what they want. The second part of this topic focuses on Web site developers by showing how to promote a search provider and how to use search suggestions to improve a user's experience with your search provider.

This topic discusses the following subjects:

End User Search Features

The Instant Search feature in Internet Explorer 8 enables the end user to add favorite search providers and quickly switch between providers during a search. Internet Explorer 8 supports search suggestions to help users initiate better search queries. Search providers can also provide instant answers to queries. In addition to using the Instant Search box, users can access all of their search providers through the Accelerators menu. These features are designed to improve search experience and increase productivity for end users.
This section covers the following topics:

Adding Search Providers

The Instant Search box in the upper-right corner of the Internet Explorer 7 and Internet Explorer 8 browser window replaced the Windows Search Assistant (or Search Pane). Before you can use a specific search provider, you must add that provider to your list. To add a search provider, browse to the provider's Web site. There are two ways to install a search provider.

First, the provider Web site might display a link or button that you can click to add them as a search provider to your list. By clicking the link or button, the Add Search Provider dialog box is displayed so you can confirm your selection.
Add Search Provider dialog box
Figure 1. Add Search Provider dialog box.
If this particular search provider is already installed, you will get a dialog box saying so or you will get a dialog box with options to upgrade that provider. For example, the search provider may offer search suggestions now where it did not before.

The second way to add a search provider is by discovery. After the provider's Web page loads, the drop-down arrow on the Instant Search box turns orange, indicating that a search provider can be installed.
Orange drop-down arrow on the Instant Search box
Figure 2. Orange drop-down arrow on the Instant Search box.
When you click the orange drop-down arrow, a list of the search providers that are installed and other available options is displayed. A golden icon appears to the left of the search provider's name that Internet Explorer 8 discovered. When you click the Add Search Providers option, a list of the available providers is displayed. The following picture shows the Live Search options: Products, Images, and Videos.
Add Search Provider menu showing search providers and search options
Figure 3. Add Search Provider menu showing search providers and search options.

Note  To help you get started, there is a list of providers available from the Internet Explorer Gallery. The gallery can be accessed at any time by choosing Find More Providers... from the drop-down arrow on the Instant Search box; as shown in Figure 3.

Adding Your Own Search Provider

If your search provider does not provide a direct way for you to add it as a search provider, you can still add it manually. Follow the instructions on the Windows Search Guide page to create your own search provider. Note that this widget adds the provider only as a search provider without search suggestions. If you know that the provider offers search suggestions, use the search provider's Web site to add the provider.

Managing Search Providers

The maximum number of search providers you can install is 200, which might be challenging to manage.To manage your search providers in Internet Explorer 8, click the drop-down arrow on the Instant Search box, and then click Manage Search Providers. You can reorder providers, change the Default status, and remove a provider, as shown in the following image.
Manage Internet Explorer Add-ons dialog box
Figure 4. Manage Internet Explorer Add-ons dialog box.
To change a search provider's attributes, click the provider name, make your changes, and click Close.

Note  You cannot remove the current Default provider. To remove the default provider, you must set another provider to Default status. To do that, open the Manage Search Providers dialog box, click another provider, click the Set as default button. Then, click the provider you want to remove and click Remove.

Searching With My Favorite Search Providers

To perform a search, type the search term in the Instant Search box. While you might be familiar with this box in Internet Explorer 7, you will notice significant improvements in how you can search in Internet Explorer 8.
After you click in the Instant Search box, a QuickPick menu is displayed. The QuickPick menu shows as many search providers' icons as the width of Instant Search box would allowed, making it easy to switch between providers. To see more search providers in the QuickPick, resize the Instant Search box. You can use the same term to search across these providers without having to navigate to each provider's Web site.
QuickPick menu
Figure 5. The QuickPick menu.
After entering your search term, press ENTER to use the current search provider, or select a provider from the QuickPick menu to perform the search. If the search provider you use supports search suggestions, then search suggestions appear as you type. For example, if you search for "Xbox" by using Live Search, you might see the following list of suggestions.
Live Search Suggestions drop-down menu
Figure 6. Live Search Suggestions drop-down menu.
The top part of the suggestion menu is the AutoComplete section that shows recent searches that match your current search term. The second part of the suggestion menu is the Suggestions section that lists search suggestions provided by the current search provider. The third part of the suggestion menu is the History section that lists previously visited sites showing Web site titles and URLs that match the current search term. Matching terms are highlighted. You can select a matching term to search. The QuickPick menu is displayed at the bottom of the menu for quick access to your top search providers.
Internet Explorer 8 enables search providers to display visual suggestions. Search providers can supply a small image and text, as shiown in the following figure, or just an image which can be mixed in with regular text suggestions.
Visual and text suggestions for the term Xbox
Figure 7. Xbox visual and text search suggestions
In addition, a search provider can offer instant answers to your search term. With instant answers, your provider can take you directly to the information you are looking for rather than to a search results page. This can make your search more efficient.

Search Using Accelerators

New to Internet Explorer 8 is the concept of Accelerators. Accelerators enable you to access service providers anywhere on the page. Every time you add a search provider to your list, Internet Explorer 8 automatically converts it to an Accelerator. To use this feature, highlight the text you want to search for and click the Accelerators icon Accelerators icon that appears. A condensed list of the Web services you have installed is displayed. Among them is your default search provider. To use a different search provider, click More Accelerators. The following picture shows the expanded More Accelerators menu.
More Accelerators menu showing available Web services
Figure 8. The More Accelerators menu showing available Web services.

Another benefit of an Accelerator is the ability to Preview search results. If your search provider supports search preview, you can simply select some text on a Web page, click the Accelerator's icon, mouse over your search provider's name (you may need to open the More Accelerators list to find it), and a preview window appears with search results for the words you selected. This makes it even faster and more convenient to search using your installed search providers. To learn more about Accelerators, see the article OpenService Accelerators Developer Guide.

Find on Page

The Find on Page feature is another improvement to the user experience in Internet Explorer 8. To start a search, click the Find option at the right of the QuickPick menu or use the shortcut key CTRL+F. The Find on Page feature searches the current page using the terms in the Instant Search box. As the following screen shot illustrates, all matches on the page are highlighted, and the first matching term is selected. The number of matches on the page is also displayed.
Find on Page feature

Tips and Tricks

Here are some other features and hints not covered above.

  • Search history can be deleted. You can delete previous search terms and history pages from the History list. This is useful when you do not want terms you misspelled to appear in the AutoComplete section. As you type in the Address bar or the Instant Search box, search suggestions are displayed along with AutoComplete and History suggestions. Mouse over the item you want to delete from the AutoComplete or History list, and an X appears next to the item, as shown in the following picture. Click the X to delete the item from the list.
    Deleting an item from the History list

  • You can initiate a search from the Address bar. When using the Address bar, your current search provider will be used to offer search suggestions; however, the search will be performed by your Default search provider. To initiate a search from the Address bar, start the search with a ? followed by your search term. For example, to do a search for xbox, type ? xbox. If your current search provider offer search suggestions for xbox you will see them listed. Selecting a term or pressing ENTER will perform the search using your Default search provider.
  • The Instant Search box can be resized. To resize the Instant Search box, move the pointer to the left edge of the Instant Search box. When the horizontal pointer appears, drag to resize the Instant Search box.

 

Web Developer Search Features

Sites can now advertise search providers so that users can perform searches directly from the Internet Explorer chrome without first having to navigate to a particular site. The default search provider is also used to perform searches from the Address bar. The first step in promoting your search provider in Internet Explorer 8 is to enable users to install your Web site as a search provider in the search box. To do this, there are two steps you need to take. The first step is to create an OpenSearch Description World Wide Web link file for your search provider and the second step is to expose the description file on your Web site so that users can install it.

This section focuses on helping developers understand and take advantage of Internet Explorer 8 search features to improve user search experience. This section covers the following topics:

Creating an OpenSearch Description File

Before promoting your services and provide users with options to install your search provider, you must create an OpenSearch Description World Wide Web link file. OpenSearch Description files are small XML files that describe your search provider to Internet Explorer 8. The following table describes the values in the OpenSearch Description file.

Value Description
ShortName (required) This is the search provider's name that is displayed in the Instant Search box when your provider is selected.
URL (required) The URL for basic search queries to your search provider. It has to be an absolute URL.
Image (optional) Pointer to a favicon file of your search provider on your Web site. This icon is displayed next to the provider name in the Instant Search box. The icon must be a valid shortcut icon file otherwise a generic icon will be used. For more information, see the "Creating Icons in the Correct Format" section of the Add a Shortcut Icon to a Web Page article for instruction on how to create a favicon.
Suggestions URL (JSON) (optional) This is the URL where JavaScript Object Notation (JSON) suggestions can be retrieved.
Suggestions URL (XML) (optional) This is the URL where XML-based suggestions can be retrieved.
PreviewUrl (optional) URL to display results in an Accelerator Preview Window.

The following sample OpenSearch Description file defines the type of search services you intent to offer.

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:ie="http://schemas.microsoft.com/Search/2008/">
	<ShortName>My Custom Search</ShortName>
	<Image height="16" width="16" type="image/icon">http://example.com/example.ico</Image>
	<Url type="text/html" template="http://example.com/search.aspx?q={searchTerms}&amp;source=IE"/>   
	<Url type="application/x-suggestions+json" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
	<Url type="application/x-suggestions+xml" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
	<ie:PreviewUrl type="text/html" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
</OpenSearchDescription>

All OpenSearch Description files must include the search provider name and search URL. Without these elements, Internet Explorer 8 cannot install your search provider. All search URLs must contain "{searchTerms}" somewhere in the query string. When Internet Explorer 8 navigates to this provider to get search results, "{searchTerms}" is replaced by the query string that the user typed into the Instant Search box. you should include an icon within the OpenSearch Description file. If Internet Explorer 8 cannot find an icon specified by the "Image" attribute it will use a generic icon Generic search provider icon to represent your search provider in the QuickPick menu.

A quick way to generate an OpenSearch Description file is to use a widget from the Windows Search Guide to Create Your Own XML file. Follow the instructions in the widget, and then click the View XML link from step 5. The widget creates XML syntax similar to the preceding code snippet. Save the output to an XML file, and then upload the file to your Web server. Make sure you have a valid XML file, and that the "&" characters in your URL are encoded.

Note  The widget only produces a basic XML file that you can use and customize. However, it does not generate any icon or suggestion URL. You would have to add those yourself.

Adding Search Suggestions to OpenSearch Description Files

In Internet Explorer 8, search providers can offer suggestions to users. By using search suggestions, users can create better search terms and find what they are looking for faster. To offer search suggestions for JSON and XML format, add the following elements to your description file.

<Url type="application/x-suggestions+json" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
<Url type="application/x-suggestions+xml" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>

When you add additional URL elements, make sure the "text/html" type is listed first. This is for backward compatibility. The other types can follow in any order. By default, Internet Explorer uses the URL of "text/html" as the generic search URL when search suggestions are not available or not supported by earlier versions. However, when both URL for the XML and JSON exists, Internet Explorer 8 will use the XML suggestions URL.

Note  If users had added your search provider before it supported suggestions, they must add your search provider again. Internet Explorer 8 will detect that your search provider had already been installed but is now offering suggestions. The Add Search Provider dialog box will display an Upgrade Provider button and enable the checkbox for search suggestion.

Supporting Search Previews

All installed search providers are automatically converted to Accelerators. Because Accelerators support previews, this allows you to support search previews as well by adding a PreviewUrl to your OpenSearch Description file as shown here.

<ie:PreviewUrl type="text/html" template="http://suggestions.example.com/search.aspx?q={searchTerms}/>

With this element added to your OpenSearch Description file, you can offer a lightweight view of the search results page. The preview shows up in a 320 x 240 window when the user selects some text on a Web page, clicks the Accelerators icon, and mouses over your search provider name. For more information about Accelerators and the Preview feature, see the article on OpenService Accelerators Developer Guide.

Note  The ie:PreviewUrl is using the namespace provided by Internet Explorer's namespace declarations. When using this feature, make sure this declaration is defined in your OpenSearchDescription tag: xmlns:ie="http://schemas.microsoft.com/Search/2008/".

Promoting Search Providers

After you create your OpenSearch Description file, you can promote your services to users. There are two primary ways to promote search providers. The first option is to provide your users with a link or button that points to your description file. The users will need to take action to install your provider. The second option is to make your provider discoverable. It requires one line of code at the top of your Web page and allows Internet Explorer 8 to discover your provider as users browse your site.

The following code adds a search provider when a user clicks a link.

<a href="#"
   onclick="window.external.AddSearchProvider('http://www.example.com/provider.xml')"
   >Add Search Provider Example</a>

The code makes a call to the AddSearchProvider method. The AddSearchProvider method is available from the external object of window. When you run this code from an HTML page in Internet Explorer 8, the Add Search Provider dialog box is displayed.

Making Search Provider Discoverable

The second way to promote a search provider is to make the search provider discoverable. The OpenSearch specification describes how to advertise search providers by adding a link element to the head of the Web page. The following code enables Internet Explorer 8 to discover your search provider.

<link title="My Provider" rel="search"
   type="application/opensearchdescription+xml"
   href="http://www.example.com/provider.xml">

The rel attribute must be "search," and type must be "application/opensearchdescription+xml." The value of title is displayed in the Instant Search box drop-down menu. The href attribute contains an absolute or relative URL that specifies the location of the OpenSearch Description file.

When the page is loaded in Internet Explorer 8, the drop-down arrow on the Instant Search box turns orange to indicate that new search providers have been added to the drop-down menu. The three newest discoverable search providers are listed; these must be installed before additional providers can be included in the list. When the user browses to another domain, the previously discovered search providers are removed. Users can try out the new providers before adding them to their list. When a user decides to install a search provider, the Add Search Provider dialog box is displayed.

Offering Search Suggestions

Starting with Internet Explorer 8, the Instant Search box supports search suggestions. With search suggestions, as the user is typing in the search box, Internet Explorer 8 can send requests to your search provider with the current query string and you can supply suggestions which might enable the user to create a better search term. Internet Explorer 8 supports two search suggestions formats: JSON format and XML format. The JSON format enables text-based search suggestions that can be augmented with descriptions and URL. The XML format enables all the content available with JSON suggestions, and further support visual suggestions and section titles. More details on XML search suggestions format can be found from this article: XML Search Suggestions Format Specification.

Note  This section covers the formatting of individual suggestion responses only. To fully support search suggestions, you must generate these suggestions and provide the right suggestions at each request. Since this part of supported suggestions is unique to each provider, it is not addressed here.

Using JSON Suggestions Format

JSON search suggestions are returned as a Microsoft JScript array of arrays. The array contains four values:

Value Description
Query string (required) The search term that was requested. If the browser requested suggestions for "xbox," then the query string is "xbox". Returning the query string in the array ensures that the returned suggestions are for the requested search term.
Completions array (required) The suggestions for the given query string.
Descriptions array (optional) Alternate strings that provide additional information or context about a given completion.
Query URLs array (optional) A list of URLs that should be used if the user selects a given suggestion. This acts as an instant answer to the search term by taking the user to the URL rather than a search results page.

A JSON response must return the query string and the search suggestions in the completions array. The following is an example of a simple JSON response where the descriptions and query URLs are omitted.

["xbox",
	["Xbox 360", "Xbox cheats", "Xbox 360 games"]]
Note  A maximum of ten search suggestions are displayed at a time. Adding descriptions, visuals, and sections limits the number of suggestions that can be provided. It is important to send the most relevant suggestions at the beginning of the completions array.

To help users create better search terms, descriptions can be offered along with the suggestions. A query URLs might be offered as a form of an instant answer. When a query URL is offered, and the user clicks on that suggestion, Internet Explorer 8 takes the user to that query URL directly rather than to a search results page. The following is an example of a detailed JSON response.

["xbox",
	["Xbox 360", "Xbox cheats", "Xbox 360 games"], 
	["The official Xbox website from Microsoft", "Codes and walkthroughs", "Games and accessories"],	
	["http://www.xbox.com","http://www.example.com/xboxcheatcodes.aspx", "http://www.example.com/games"]]

In this JSON response, the first search suggestion consists of the following elements:

  • First element in the first array ("Xbox 360")
  • First element in the second array ("The official Xbox website from Microsoft")
  • First element in the third array ("http://www.xbox.com").

The preceding response produces the following results:
JSON search suggestions

Using XML Suggestions Format

The preceding JSON response can be represented in XML suggestions format, as shown in the following example. This example contains the same suggestions response as in the preceding JSON suggestions and produces the exact same result.

<?xml version="1.0"?>
<SearchSuggestion xmlns="http://schemas.microsoft.com/Search/2008/suggestions">
    <Query>xbox</Query>
    <Section>
	<Item>
		<Text>Xbox 360</Text>
		<Description>The official Xbox website from Microsoft</Description>
		<Url>http://www.xbox.com</Url>
	</Item>
	<Item>
		<Text>Xbox cheats</Text>
		<Description>Codes and walkthroughs</Description>
		<Url>http://www.example.com/xboxcheatcodes.aspx</Url>
	</Item>
	<Item>
		<Text>Xbox 360 games</Text>
		<Description>Games and accessories</Description>
		<Url>http://www.example.com/games</Url>
	</Item>
    </Section>
</SearchSuggestion>

The JSON suggestion format does not allow section titles to be specified in the suggestion menu. In Internet Explorer 8, the section title will be the name of your search provider plus the word "Suggestions." For example, if your search provider is named "Joe's Search," then your suggestions would be titled "Joe's Search Suggestions." In the following example, the search provider is named "My Custom Search" and the title is displayed as "My Custom Search Suggestions." If you want to organize your suggestions in multiple sections, use the XML suggestions format. In addition to section titles, the XML suggestions format supports visual suggestions. More details on XML search suggestions format can be found from this article: XML Search Suggestions Format Specification.

XML search suggestions support the same features as JSON search suggestions, and additional features that are not available in JSON. These additional features include the following:

  • Customizing the title of the suggestions section.
  • Splitting suggestions across multiple section separators.
  • Including visual suggestions.

To customize section titles, you can add a "title" attribute to the Section element, or you can add a Separator. Separators may or may not have a title. The following example adds a separator for "My Text Suggestions" and another separator without a title.

<?xml version="1.0"?>
<SearchSuggestion xmlns="http://schemas.microsoft.com/Search/2008/suggestions">
    <Query>xbox</Query>
    <Section>
	<Separator title="My Text Suggestions"/>
	<Item>
		<Text>Xbox 360</Text>
		<Description>The official Xbox website from Microsoft</Description>
 		<Url>http://www.xbox.com</Url>
	</Item>
	<Item>
		<Text>Xbox cheats</Text>
		<Description>Codes and walkthroughs</Description>
		<Url>http://www.example.com/xboxcheatcodes.aspx</Url>
	</Item>
	<Item>
		<Text>Xbox 360 games</Text>
		<Description>Games and accessories</Description>
		<Url>http://www.example.com/games</Url>
	</Item>
	<Separator />
	<Item>
		<Text>xbox 360 lowest price</Text>
	</Item>
	<Item>
		<Text>xbox 360 news</Text>
	</Item>
    </Section>
</SearchSuggestion>

The code above produces the following result.
XML search suggestions with custom title and section separators

Offering Visual Suggestions

Search suggestions generally consist of text suggestions or related terms that users might want to search for. In Internet Explorer 8, the concept of a search suggestion has been expanded to include a query string, a link, or a visual suggestion. A visual suggestion includes an image. Your search provider can supply an image with text or just an image as a search suggestion for the user's search term. To add a visual suggestion to your response, add an Image element to the Item element of that suggestion. Be sure to also specify the image's width and height dimentions. For example, to offer a visual suggestion for the term "Xbox," you might return the following:

 <Separator title="My Visual Suggestions" />
  <Item>
  	<Text>Xbox 360 Game Consoles</Text>
  	<Description>Game console systems and packages at a great deal.</Description>
  	<Image source="http://www.example.com/xboxconsole.jpg" alt="Xbox 360 Consoles" width="75" height="75"/> 
  	<Url>http://www.example.com/</Url>
  </Item>
  <Item>
  	<Text>Xbox 360 Wireless Controller</Text> 
  	<Image source="http://www.example.com/xboxcontroller.jpg" alt="Xbox 360 Wireless Controller" width="75" height="75"/> 
  </Item>
  <Item>
  	<Text>Xbox 360 Live Games</Text> 
  	<Image source="http://www.example.com/live.jpg" alt="Xbox 360 Live Games" width="75" height="75"/> 
  	<Url>http://www.example.com/games.aspx?q="Xbox 360"</Url> 
  </Item>

The preceding code produces the following results.
Xbox visual suggestions

This example offers a URL with two of the suggestions. Internet Explorer 8 takes the user directly to the page specified by the URL. If URL is not offered, then the value of the Text element ("Xbox 360 Wireless Controller") is used as the search term. If you want to offer a visual suggestion with no Text or Description, you must offer a URL so Internet Explorer 8 knows where to send the user.

By default, if you include text with an image, the text is centered vertically next to the image. By setting the align attribute value to "top", "middle", or "bottom", you can specify the text alignment of the Text element and Description element relative to the image.

To align your text, add the align attribute to your image element. The example below sets the align attribute to "top".

<Image source="http://www.example.com/xboxconsole.jpg" alt="Xbox 360 Consoles" width="75" height="75" align="top"/> 
Handling Response Errors

When you offer search suggestions, chances are, there may be terms you may not have any suggestions for or you may not recognize the search term. In that case, you are still required to send back a valid XML response otherwise your users will get a message that says An error occurred. To avoid this message, send back a valid XML response when you have no suggestion for the search term. The code snippet below sends a response without any suggestion for the search term xbox. This response will show the No results. message.

<?xml version="1.0"?>
<SearchSuggestion xmlns="http://schemas.microsoft.com/Search/2008/suggestions">
    <Query>xbox</Query>
</SearchSuggestion>

For a JSON respond, return the following:

 ["xbox"] 

Besides not having any suggestion for a search term, you might have cases where you know the suggestion exist but you are still getting the error message. In that case, check the request for encoding. By default, search terms are encoded using UTF-8 though the HTTP GET request method. That means if the user type in any accented characters, the characters are encoded to an ASCII (text) equivelent. For example, if your search term is café then the term that is send to you is q=caf%c3%a9 where the accented é has been encoded to an ASCII equivelent of %c3%a9.

Note  Search providers must use the HTTP GET request method; the POST request method is not supported.

Getting Dimensions for the Search Suggestions Menu

You should include the height and width of your image when you provide a visual suggestion. If you do not include these values, Internet Explorer 8 allocates a default space for the image and scales the image to fit within that space. The default amount of space, in this case, is the vertical equivalent of one line of text.

The Instant Search box can be resized, so the dimensions of the search suggestions drop-down menu may vary. To find out the dimensions of the search suggestions menu, you can add parameters to the OpenSearch Description URL that return the size of the search suggestions drop-down menu. Available parameters include the following.

Parameter Description
{maxWidth} The width of the drop-down menu, in pixels.
{sectionHeight} The height of the entire suggestions section.
{rowHeight} The height of a single line of text, which is equivalent to one line of text.

The following example shows these parameters added to the URL of the OpenSearch Description file.

<Url type="application/x-suggestions+xml" 
	template="http://suggestions.example.com/search.aspx?q={searchTerms}&amp;
	maxwidth={maxWidth}&amp;rowheight={rowHeight}&amp;sectionHeight={sectionHeight}" 
/>

The following picture identifies the area for each parameter.
Search suggestions menu parameter

Identifying Search Referrers

Starting from Internet Explorer 7 the OpenSearch Referrer Extension World Wide Web link is supported. When the user initiates a search, Internet Explorer adds a referrer attribute to the search query that indicates whether the search was initiated by the Instant Search box or by the Address bar. If the search was initiated by the Instant Search box, the referrer attribute is set to IE-SearchBox. If the search was initiated from the Address bar, either through a favorite or direct typing, the referrer attribute is set to IE-Address.

Localizing Search Suggestions

If you offer your services in multiple languages you can determine which localize suggestions to send by adding the "{Language}" attribute to your query string . The example below shows how to receive language information from the user to serve localize requests:

<Url type="application/x-suggestions+xml" 
	template="http://suggestions.example.com/search.aspx?
	q={searchTerms}&amp;language={Language}" 
/>

When Internet Explorer requests suggestions, it will replace "{Language}" with the Internet Explorer accepted language that's defined on the user's system's locale. The user's system's locale can be set from the Control Panel and from language settings of Internet Explorer from the Internet Options dialog box.

Note  See the section on "Handling Response Errors" above for more information about character encoding that may affect your locale responses.

Remarks

Keep the following guidelines in mind.

  • A Web site cannot automatically launch the Add Search Provider dialog box. It is locked down in the same way that a pop-up blocker locks down Web sites, and can only be launched as the direct result of a user action.
  • Titles should be short, ideally, 16 characters or less. This string is used by the Instant Search box. If the title is longer then the search box, it might be clipped.
  • The title in the link tag should be the same title used by the XML description file. These strings must match so that Search Discovery recognizes that a provider has been installed so that the Instant Search box drop-down arrow doesn't turn orange, or an installed provider doesn't add itself to the list of discovered providers.
  • When a user restores default Internet Explorer settings, all custom search providers are removed.
  • If you are using scripts to add aprovider, you may also want to call the IsSearchProviderInstalled helper method to check if your provider has already been installed.
  • When you create description files, make sure the file is of valid XML syntax and that all characters in your query strings are encoded and that all "&" characters are escaped to "&amp;".
  • Because users can resize the Instant Search box, you can query Internet Explorer 8 to return the search suggestions drop-down dimensions by adding parameters to the URL of your XML description file.

Related Topics

출처 : http://msdn.microsoft.com/en-us/library/cc848862(v=VS.85).aspx

Posted by SB패밀리
IE에서 검색공급자 설치하기

Installing a Search Provider and Setting the Default

Windows Internet Explorer 8 extends a rich searching experience by offering users the option to install multiple search providers. As a user installs search providers, each provider has a chance to set itself as the default provider. Internet Explorer 8 has a new mandatory Search Provider Default user experience that keeps the user in control of their preferred search provider.

This article addresses best practices for setting a default search provider as you write your software to install your service.

In Internet Explorer 7, any program can write the GUID of their search provider to the DefaultScope registry key in HKCU\Software\Microsoft\Internet Explorer\SearchScopes to set the default search provider. Multiple programs can write (and monitor) this registry key, resulting in a confusing experience for the user when multiple programs write to this registry key and issue notification of changes.

To keep the user in control of their browser and their search preference, Internet Explorer 8 informs the user when a program wants to change the search default.

In Internet Explorer 8, writing the DefaultScope registry key still works, but (to keep the user in control) the user will see a dialog (the next time they open Internet Explorer) that informs them of a request to change the search default. The dialog box looks like this:

IE8 search default change notification dialog box
Figure 1: In this example, the user had the Fabrikam Search service as their default, and the Contoso Search software wrote a new setting to the DefaultScope registry key.

This dialog informs the user of the request, but does not give proper attribution to the source of the request.

We recommend that all software use the IOpenServiceManager APIs on Internet Explorer 8 and later to install a search provider and request that the user set it as their default. These APIs allow software to manage their search providers in a supported way that will not conflict with other software already installed on the user's machine. When software requests a search default change using these APIs, the source of the request is properly attributed in the dialog:

Example of the IE8 search default change dialog box
Figure 2: In this example, the software requests a search default change using the recommended SetDefault APIs and clear attribution is displayed. In this case, it is the Contoso.com Internet Search software.

This dialog is displayed as soon as the SetDefault API is called.

We strongly recommend that your software only use methods detailed in this article when setting a search default. Attempts to circumvent the Search Provider Default dialogs is considered inappropriate behavior.

The following code sample shows how to install a search provider and request that the user set it as the default.

#include <windows.h>
#include <atlbase.h>
#include <openservice.h>

    HRESULT hr = E_FAIL;
    BOOL fComInitialized = FALSE;

    if (S_OK == CoInitialize(NULL))
    {
        fComInitialized = TRUE;

        //Open a handle to the OpenService manager
        CComPtr<IOpenServiceManager> spManager;
        hr = spManager.CoCreateInstance(CLSID_OpenServiceManager);

        if (SUCCEEDED(hr))
        {
            CComPtr<IOpenService> spService;

            //Install my search provider
            //URL-OF-SERVICE: See http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_description_elements
            hr = spManager->InstallService(URL-OF-SERVICE, &spService);

            if (hr==S_OK)
            {
                //Request that the user change their search default
                hr = spService->SetDefault(TRUE, NULL);
            }
        }
    }

    if (fComInitialized)
    {
        CoUninitialize();
    }

Note that the SetDefault API will show a dialog (see Figure 2) requesting that the user change their search default. The user can approve or deny this request from the software during installation. If approved, the software can change the default setting. If denied, however, the software should not change user's default settings. The user can change this setting at any time by using the Manage Add-ons dialog.

If the binary that is calling the SetDefault API is signed with a valid code signing certificate, the program name and publisher will be displayed in the Search Provider Default dialog. We recommend code that calls SetDefault be signed.

Related Topics

출처: http://msdn.microsoft.com/en-us/library/ee330719(v=VS.85).aspx

Posted by SB패밀리



출처 :  http://blog.naver.com/xinfra/80007923632

1. 툴밴드(Tool Band)란?
-----------------------------

이건 IE의 확장자입니다. IE의 상단에 CoolBar가 보이시죠? 그 안에 여러개의 ToolBar들이 들어 있는데, 거기다가 내가 만든 툴바를 집어 넣고 싶을때 쓰는겁니다.
보기/도구모음 메뉴에서 (또는 쿨바 위에서 오른클릭) 툴바들을 보이고 감추고 할 수 있죠.

이 놈과 유사품으로 Explorer Bar와 Desk Band가 있습니다.
Explorer Bar는 보기/탐색창 메뉴에서 선택되는 항목으로 브라우저의 왼쪽에 세로로 튀어 나옵니다.
Desk Band는 IE 확장자가 아니라 윈도우즈 확장자라고 해야 하나요? 모니터 젤 아래쪽에 작업표시줄이 있죠? (시작버튼이 있는 줄) 거기에 들어가는 밴드입니다.
이 둘은 오늘 강좌의 주메뉴인 ToolBand와 거의 똑같습니다. MSDN에도 세 놈을 같이 취급하고 있구요.

아마도 오늘은 상당히 복잡하고도 긴 글이 될것 같은데요. 예제로 만들어 볼 밴드는 델마당 검색밴드입니다.
이름을 델밴드라고 붙였는데요(대일밴드가 아님) 델마당 홈페이지 왼쪽 상단에 게시판 검색 폼이 있죠? 그 놈과 같은 기능을 하는데, 이건 밴드로 붙는 겁니다.


2. 들어가기 전에...
-----------------------------

오늘은 확장자들을 좀 더 고급스럽게 등록하는 방법을 한 번 살펴보도록 하겠습니다.
지금까지는 COM 등록 따로(델파이메뉴에서), 확장자 등록 따로(REG 화일로) 했었는데요, 이제는 한 방에 모조리 등록해 버리는 방법을 알아보도록 하지요.
처음에 마법사로 프로그램 시작 준비를 하면, 맨 아래쪽에

initialization
 TComObjectFactory.Create(ComServer, TDelSearch, Class_DelSearch,
   'DelSearch', '', ciMultiInstance, tmApartment);
end.

이런게 하나 생겼죠? 도데체 이게 뭐하는 놈인지 궁금하지 않으셨나요? 컴포넌트 공장?
이 TComObjectFactory 라는 클래스는 프로그램 동작시에 필요한 게 아닙니다. 바로 설치/제거 시에 사용되는 건데요. 델파이메뉴에서 Register ActiveX Server 또는 Unregister ActiveX Server를 누르면 바로 이 공장이 가동되는 겁니다.
혹은 도스창에서 Regsvr32.exe 로 설치할 경우도 마찬가지 입니다. (델파이도 아마 이걸 이용할지도..)
TComObjectFactory 는 기본적인 기능 즉, COM 서버로 등록하고 제거하고 하는 기능 밖에 없기때문에 다른 부분의 레지스트리도 같이 조작하기 위해서는 공장을 따로 만들어야합니다. 간단히 TComObjectFactory 를 상속받아 만들면 되는데요, 오늘 예제 프로그램에 들어가 있는 공장은 이렇습니다.

type
 ComFacProc = procedure;

 TComFac = class (TComObjectFactory)
 private
   FInstallProc, FUnInstallProc : ComFacProc;
 public
   constructor Create(ComServer: TComServerObject; ComClass: TComClass;
     const ClassID: TGUID; const ClassName, Description: string;
     const InstallProc, UnInstallProc : ComFacProc;
     Instancing: TClassInstancing; ThreadingModel: TThreadingModel = tmSingle);
   procedure UpdateRegistry(Register: Boolean); override;
 end;

복잡한것 같지만 실은 아주 단순합니다.
모든 기능을 그대로 상속 받으면서 설치시 실행될 함수, 제거시 실행될 함수를 각각 추가해 준것 뿐입니다.
이 예제에서는

procedure InstallProc;
begin
 REG_SetString(HKEY_CLASSES_ROOT, 'CLSID\' + GUIDToString(Class_DelSearch), '', BandCaption);
 REG_SetString(HKEY_CLASSES_ROOT, 'CLSID\' + GUIDToString(Class_DelSearch) + '\Implemented Categories\' + CATID_CommBand, '', '');
 REG_SetString(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Internet Explorer\Toolbar', GUIDToString(Class_DelSearch), '');
end;

procedure UnInstallProc;
begin
 REG_Delete(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Internet Explorer\Toolbar', GUIDToString(Class_DelSearch));
end;

initialization
 TComFac.Create(ComServer, TDelSearch,
                Class_DelSearch, 'DelSearch', '',
                InstallProc, UnInstallProc,           // 이 라인만 원래꺼와 다르죠.
                ciMultiInstance, tmApartment);
end.

이렇게 하면 원래의 COM 설치/제거 기능은 알아서 하고 저 덧붙인 함수들을 같이 수행하는 겁니다.
그런 이유로 오늘 부터는 REG 화일이 따라가지 않을 것입니다.
REG_xxx 함수들은 ComFac 유닛에 같이 포함되어 있습니다.


3. 레지스트리에 등록
-----------------------------

원래는 이게 뒤쪽에 나와야 하는데, 위에 공장 설명부분에 레지스트리 부분이 나왔기때문에 그냥 한꺼번에 해버릴려구요.

const
 CATID_DeskBand = '{00021492-0000-0000-C000-000000000046}';  // 태스크바 밴드 (DeskBand)
 CATID_InfoBand = '{00021493-0000-0000-C000-000000000046}';  // 탐색창        (ExplorerBar)
 CATID_CommBand = '{00021494-0000-0000-C000-000000000046}';  // 툴바 밴드     (ToolBand)

툴 밴드는 위의 공장처럼
 HKEY_CLASSES_ROOT\CLSID\{Your Band Object's CLSID GUID}\Implemented Categories\{00021494-0000-0000-C000-000000000046} (Key)
 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Toolbar\{Your Band Object's CLSID GUID} = '' (Value)
이렇구요.

탐색창은
 HKEY_CLASSES_ROOT\CLSID\{Your Band Object's CLSID GUID}\Implemented Categories\{00021493-0000-0000-C000-000000000046} (Key)
 HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Explorer Bars\{Your Band Object's CLSID GUID} (Key)
 HKEY_CLASSES_ROOT\CLSID\{Your Band Object's CLSID GUID}\Instance\CLSID = '{4D5C8C2A-D075-11D0-B416-00C04FB90376}' (Value)
 HKEY_CLASSES_ROOT\CLSID\{Your Band Object's CLSID GUID}\Instance\InitPropertyBag\Url = '탐색창의 컨텐츠가 있는 페이지의 URL' (Value)
을 각각 집어 넣습니다.

데스크밴드는 어떻게 등록하는지 모르겠군요. (--;) MSDN 설명서에는 이 부분이 없어요.
아시는 분은 꼬리를 달아주시길 바래요.

실제 MSDN예제들을 보면 저렇게 무식하게 레지스트리를 직접 건드리는게 아니라 준비된 인터페이스들 및 함수들을 이용해서 등록합니다.
이번 강좌에서 그걸 흉내 한번 내볼려다가 기능은 같은데 쓸데없이 복잡해지기만 할것 같아 그만 뒀습니다.
첨부파일에는 ComCat 이라는 유닛으로 포함은 되어 있지만 예제에서 사용은 하지 않습니다. 참고만 하세요.


4. 시작하자.
-----------------------------

지금까지와 같은 방법으로 새 프로젝트를 열고 COM공장부터 뜯어 고칩니다. 물론 그냥 두고 REG를 따로 세팅하는 방식으로 하셔도 상관은 없습니다.
그리고는 그대로 두고 File/"New Form" 메뉴를 누릅니다. 그렇습니다. 여태까지는 폼이 없는 확장자들이었지만 이건 폼이 필요합니다. 밴드를 넣으려면 밴드를 그려야죠.

ToolBand의 경우 ..

1. 폼에 CoolBar를 집어 넣는다.
2. CoolBar에 ToolBar를 집어 넣는다.
3. ToolBar에 놓고싶은 컨트롤들을 가져다 놓는다. (고수들은 ToolBar없이 CoolBar위에 바로 컨트롤을 올리기도 한다.)
4. 모양을 다듬는다. (폼의 BorderStyle는 bsNone로 하자)
  크기를 알맞게 조정하고 (AutoSize를 이용하면 편리하다) 폼의 Visible이 True로 되어있는지 확인도 하자. (누구처럼 그림 안나온다고 혼자 열받지 말자)

DeskBand, ExplorerBar의 경우는 해보질 않아 꼭 집어 말씀드리지는 못하겠구요. DeskBand는 뭐 ToolBand랑 똑 같을것 같구, ExplorerBar는 패널이나 아무컨트롤을 가져다 놓고 align을 alClient로 주면 되지 않을까 싶습니다.

자 이제 폼을 만들었으니, 메인유닛으로 돌아와서 그 폼의 유닛을 uses 절에 추가합니다.
추가하는 김에 ComObj, ShlObj, Shdocvw 등 필요한 유닛들도 모두 포함시킵니다.

이 세 개의 확장자들은 똑같이 IObjectWithSite, IPersistStream, IDeskBand 인터페이스를 구현합니다.
여기에 추가해서 "입력을 요구하는 컨트롤"이 폼에 존재할 경우에는 IInputObject 를 추가로 구현해야하고, 메뉴 항목에도 포함시키고 싶다면 IContextMenu를 또 추가해야합니다.
오늘 예제로 사용되는 놈은 이렇습니다.

 TDelSearch = class(TComObject, IObjectWithSite, IPersistStream, IDeskBand, IInputObject)
 private
   Band : TFormBand;                    // 앞에서 만든 폼이 Create 될 자리
   WinHandle : HWND;                    // IE CoolBar의 핸들을 보관할 자리
   InputObject : IInputObjectSite;      // 입력받는 부분이 있을경우 처리해야할 인터페이스
   HasFocus : Boolean;                  // 지금 내가 포커스를 가지고 있는지 아닌지?
   WebBrowser : IWebBrowser2;           // 웹브라우저

 protected
 {IObjectWithSite}
   function SetSite(const pUnkSite: IUnknown ):HResult; stdcall;
   function GetSite(const riid: TIID; out site: IUnknown):HResult; stdcall;

 {IPersist}
   function GetClassID(out classID: TCLSID): HResult; stdcall;
 {IPersistStream}
   function IsDirty: HResult; stdcall;
   function Load(const stm: IStream): HResult; stdcall;
   function Save(const stm: IStream; fClearDirty: BOOL): HResult; stdcall;
   function GetSizeMax(out cbSize: Largeint): HResult; stdcall;

 {IOleWindow}
   function GetWindow(out wnd: HWnd): HResult; stdcall;
   function ContextSensitiveHelp(fEnterMode: BOOL): HResult; stdcall;
 {IDockingWindow}
   function ShowDW(fShow: BOOL): HResult; stdcall;
   function CloseDW(dwReserved: DWORD): HResult; stdcall;
   function ResizeBorderDW(var prcBorder: TRect; punkToolbarSite: IUnknown; fReserved: BOOL): HResult; stdcall;
 {IDeskBand}
   function GetBandInfo(dwBandID, dwViewMode: DWORD; var pdbi: TDeskBandInfo): HResult; stdcall;

 {IInputObject}
   function UIActivateIO(fActivate: BOOL; var lpMsg: TMsg): HResult; stdcall;
   function HasFocusIO: HResult; stdcall;
   function TranslateAcceleratorIO(var lpMsg: TMsg): HResult; stdcall;
 end;

정말 만들어야할 함수들이 무지하게 많지요.
이걸 조목 조목 다 설명하려니 앞이 다 캄캄합니다요.
그래서 대충대충(^^;) 넘어가도록 하겠습니다.

먼저 쓸데없는 놈들부터 뽑아서 버리고 지나가죠.
입력받는 컨트롤이 있을경우 IInputObject를 반드시(굵은글씨) 구현하라고 되어 있길래 집어 넣었는데, 디버깅 결과 IE가 전혀 호출을 하지 않습니다. 왜 만들라고 했는지 모르겠군요 T.T
그래도 예제에는 원래 예제(Visual C용)를 그대로 델파이로 옮겨 놓았습니다.

IPersistStream도 이 예제에서는 써먹지 않습니다. MSDN이 말하길 ExplorerBar의 경우 데이터를 스트림으로 받아내거나 집어넣을때 써먹을수 있다고 합니다.
써먹든 말든 무조건 디폴트 리턴값을 돌려주면 되겠습니다.

그럼 이제는 핵심부를 살펴보도록 하죠.

SetSite란 놈은 초기화/마무리 부분이라고 생각하시면 되겠습니다.
초기화시에는 pUnkSite에 값이 담겨오고 마무리 부분에서는 nil이 넘어 옵니다.
---------------------------------------------------------------------------------------------
function TDelSearch.SetSite(const pUnkSite: IUnknown ):HResult; stdcall;
const
 IID_IOleWindow : TGUID = '{00000114-0000-0000-C000-000000000046}';  // 델파이는 이런 기본적인 것도 const로 만들어 놓질 않았다.
 IID_IInputObjectSite : TGUID = SID_IInputObjectSite;
var
 OW: IOleWindow;
begin
 if Assigned(InputObject) then begin         // 이게 할당 되어 있다면 마무리 호출이겟죠?
//     InputObject._Release;                
    InputObject := nil;
    end;

 Result := E_FAIL;
 WinHandle := 0;
 if Assigned(pUnkSite) then                  // IE CoolBar의 핸들을 얻어오기 위한 작업
 if SUCCEEDED(pUnkSite.QueryInterface(IID_IOleWindow, OW)) then begin
    OW.GetWindow(WinHandle);
//     OW._Release;
    end;

 if WinHandle<>0                             // 쿨바가 없거나 마무리 호출이면 WinHandle=0
    then Result := S_OK
    else Exit;

 WebBrowser := nil;
                                             // 이건 InputObject 인터페이스를 얻어오는 부분..
 if FAILED(pUnkSite.QueryInterface(IID_IInputObjectSite, InputObject)) then begin
    Result := E_FAIL;
    Exit;
    end;
                                             // 이건 웹브라우저의 인터페이스를 얻어 오는 부분
 if FAILED(((pUnkSite as IOleCommandTarget) as IServiceProvider).QueryService(IWebbrowserApp, IWebbrowser2, WebBrowser))
    then WebBrowser := nil;
                                             
 if not Assigned(Band) then begin            // 폼을 생성시키자. 단, CreateParented 로 생성할 것. Parent는 IE의 CoolBar.
    Band := TFormBand.CreateParented(WinHandle, WebBrowser);
    end;
 if not Assigned(Band) then Result := E_FAIL;
end;
---------------------------------------------------------------------------------------------
위에 보시면 _Release 부분이 모두 리마크가 되어 있죠? 원래는 다 _Release해 줘야하는데 델파이는 지가 알아서 한다고 프로그램에서 호출하지 말라고 합니다. 얼마나 잘 알아서 하는지 두고 보자구요. 실제로 _Release를 시키면 당장은 문제가 없는데, 프로그램 종료부분에서 문제가 발생합니다. 제가 이것땜에 엄청 고생을 했죠.

function TDelSearch.GetSite(const riid: TIID; out site: IUnknown):HResult; stdcall;
단지 QueryInterface의 역할을 하도록 만들라고 합니다. 위에서 받아낸 InputObject가 쓰이는 유일한 곳.
소스는 생략합니다.

function TDelSearch.GetWindow(out wnd: HWnd): HResult; stdcall;
내가 만든 폼의 핸들을 요청하는 통로입니다.
폼이 아직 안만들어 졌으면 Create하고, 핸들을 wnd에 넘겨주면 됩니다. 역시 소스 생략.

function TDelSearch.ShowDW(fShow: BOOL): HResult; stdcall;
내 밴드를 숨겨라/보여라 하는 명령이 전달되는 통로입니다.
True가 들어오면 보여주고, False가 들어오면 감추면 됩니다. 죽어도 감추기 싫다면 그냥 뻐팅겨도 됩니다.

function TDelSearch.CloseDW(dwReserved: DWORD): HResult; stdcall;
내 밴드를 뽀개라는 명령이 전달되는 통로입니다.
조용히 Destroy 하면 됩니다.

function TDelSearch.GetBandInfo(dwBandID, dwViewMode: DWORD; var pdbi: TDeskBandInfo): HResult; stdcall;
이건 정말 손이 많이 가는 부분입니다.
IE가 내 밴드에게 와서 이것저것 꼬치꼬치 물어보는 부분이기 때문입니다.
귀찮다고 안가르쳐주면 안되고 하나하나 다 가르쳐 줘야합니다.
질문은 pdbi.dwMask 에 담겨 옵니다.
DBIM_MINSIZE : 최소 사이즈가 얼마니? (IE창이 내 밴드 최소사이즈보다 더 작을 경우는 어쩔수 없이 무시됩니다.)
DBIM_MAXSIZE : 최대 사이즈가 얼마니? (-1로 지정하면 제한이 없어집니다.)
DBIM_INTEGRAL : 사이즈가 변할때 원하는 간격은 얼마니? (그리드 효과를 연상하시면 됩니다. 보통은 1이죠)
DBIM_ACTUAL : 니가 가장 원하는 사이즈는 얼마니? (가능하다면 이 사이즈를 유지하도록 해 줍니다.)
DBIM_TITLE : 니 밴드의 제목이 뭐야? (유니코드로 대답해야 합니다.)
DBIM_MODEFLAGS : 잡다한 기능중에 원하는거 있음 말해봐.
(잡다한 기능 - DBIMF_NORMAL:됐어. DBIMF_VARIABLEHEIGHT:밴드 높이를 조정 가능하게 해줘.
              DBIMF_DEBOSSED: 다른 밴드에 비해 움푹 들어간것 처럼 그려줘.
              DBIMF_BKCOLOR: 배경색을 crBkgnd에 든 값으로 그려줘)
DBIM_BKCOLOR : 배경색깔 칠할까? (pdbi.dwMask := pdbi.dwMask and (not DBIM_BKCOLOR); 아냐 없애줘)


5. 마치자.
-----------------------------

너무 지루한 내용이 되어 버렸네요.
이게 지금 동작은 하지만 문제가 되는 부분이 몇개 있습니다.
1. 검색어입력 Edit 컨트롤에 백스페이스가 안 먹힙니다. (T.T)
  이건 왜 이런지 도통 알 수가 없어요. 분명 IInputObject와 관련이 있을것 같은데 자료가 너무 부족해서 포기했습니다. 아시는 분 꼭 좀 알려주세요.
2. 검색어입력 Edit 컨트롤에 포커스가 넘어올때 SellectAll 설정이 안됩니다.
  이것 또한 원인을 찾지 못하고 있고 대책도 없습니다.
3. 쿨바위에서 오른쪽 버튼을 눌러 밴드감추기를 하면 팝업창이 한 번 더 튀어 나옵니다.
  (델파이로 만들었다고 차별하는거야 뭐야!)

이런 고장난 부분들은 숙제로 남겨두어야만 하겠네요.
혹시라도 수리가 가능하면 다시 꼬리를 달겠습니다.

참고사이트 : http://msdn.microsoft.com/workshop/browser/ext/overview/Bands.asp

 

Posted by SB패밀리

이 문서에서는 Microsoft Internet Explorer와 Windows Internet Explorer에서 ActiveX 컨트롤 실행을 중지하는 방법을 설명합니다. ActiveX 컨트롤의 CLSID(클래스 식별자)에 대한 Compatibility Flags DWORD 값의 데이터 값을 수정하여 ActiveX 컨트롤을 중지할 수 있습니다.

참고 Microsoft Windows XP 기반 컴퓨터와 Windows Server 2003 기반 컴퓨터의 경우 관리자는 소프트웨어 제한 정책을 사용하여 Active Directory 도메인 환경에 있는 컴퓨터의 프로그램에서 ActiveX 컨트롤이 실행되지 않게 할 수 있습니다. 소프트웨어 제한 정책에 대한 자세한 내용은 다음 Microsoft 웹 사이트를 참조하십시오.
중요 이 절, 방법 또는 작업에는 레지스트리를 수정하는 방법에 대한 단계가 포함되어 있습니다. 그러나 레지스트리를 잘못 수정하면 심각한 문제가 발생할 수도 있으므로 다음 단계를 주의하여 수행해야 합니다. 추가 보호 조치로 레지스트리를 수정하기 전에 해당 레지스트리를 백업하는 것이 좋습니다. 이렇게 하면 문제가 발생하는 경우 레지스트리를 복원할 수 있습니다. 레지스트리 백업 및 복원 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
322756  (http://support.microsoft.com/kb/322756/ ) Windows XP 및 Windows Server 2003에서 레지스트리를 백업, 편집 및 복원하는 방법


경고 ActiveX 컨트롤에 대한 중지 작업을 취소(unkilling)하지 않는 것이 좋습니다. 취소할 경우 보안 문제가 생길 수 있습니다. kill bit는 일반적으로 중요한 이유로 설정되며 따라서 ActiveX 컨트롤 중지를 취소(unkill)할 때는 주의해야 합니다. 또한 다음 절차는 매우 기술적이므로 절차에 익숙하지 않은 경우에는 진행해서는 안되며 시작하기 전에 전체 절차를 읽어 보아야 합니다.

ActiveX 컨트롤의 CLSID는 해당 컨트롤의 GUID입니다. 기본 설정이 사용될 때 Internet Explorer에서 컨트롤을 호출하지 못하도록 kill bit를 설정함으로써 Internet Explorer에서 ActiveX 컨트롤이 실행되지 않도록 할 수 있습니다.

kill bit는 레지스트리에서 ActiveX 컨트롤의 Compatibility Flags DWORD 값에 대한 특정 값입니다. 이것은 ActiveX 컨트롤에서 "스크립트 사용에 안전" 옵션을 호출하는 것과 다릅니다. "스크립트 사용에 안전" 옵션을 호출하면 Internet Explorer는 컨트롤을 호출한 다음 ActiveX 컨트롤이 안전하지 않을 수 있다는 경고를 표시합니다. 여기서 컨트롤은 사용자의 선택에 따라 실행될 수 있습니다. 그러나 Internet Explorer에서 안전하지 않는 것으로 표시된 ActiveX 컨트롤 초기화 및 스크립트 옵션을 사용하지 않는 경우 ActiveX 컨트롤에 "kill bit"를 설정하면 Internet Explorer에서 해당 컨트롤을 호출하지 않습니다. kill bit를 설정하려면 다음과 같이 하십시오.
  1. 해제할 ActiveX 컨트롤의 CLSID를 확인합니다. 컨트롤의 CLSID를 잘 모르겠으면 제조업체에 문의하십시오. 컨트롤이 설치된 경우 컨트롤의 이름을 알고 있으면 해당 CLSID를 확인할 수 있습니다. CLSID를 확인하려면 HKEY_CLASSES_ROOT\CLSID에서 각 CLSID 키에 대해 ProgID 키의 기본값 문자열 값을 검토합니다. 해제할 컨트롤에 해당하는 CLSID를 식별하기 쉽도록 하려면 해제할 컨트롤을 제외하고 가능하면 많은 ActiveX 컨트롤을 제거해야 할 수 있습니다. ActiveX 컨트롤을 제거하는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
    154850  (http://support.microsoft.com/kb/154850/ ) Windows에서 ActiveX 컨트롤을 제거하는 방법
  2. 레지스트리 편집기를 사용하여 레지스트리 키
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\CLSID of the ActiveX control
    에 있는 ActiveX 개체 CLSID의 Compatibility Flags DWORD 값의 데이터 값을 확인하십시오. 여기서 CLSID of the ActiveX Control은 해당 ActiveX 컨트롤의 클래스 식별자입니다.

    참고 일반적으로 이 레지스트리 키를 수동으로 만들어야 합니다.
  3. Compatibility Flags DWORD 값을 0x00000400으로 변경합니다.
ActiveX 컨트롤에 kill bit가 설정되고 새 버전의 ActiveX 컨트롤이 다른 CLSID를 사용하여 릴리스되는 경우 이전 CLSID를 사용하는 웹 사이트가 계속 의도한 대로 작동되도록 할 수 있습니다. 이렇게 하려면 레지스트리에서 Compatibility Flags 값과 같은 수준에 새 값을 추가하면 됩니다. 이 값은 "AlternateCLSID"라는 이름의 REG_SZ 문자열이어야 합니다. AlternateCLSID 값은 중괄호로 묶여 표시됩니다. 예를 들면 다음과 같습니다.
{ABCDEF12-ABCD-ABCD-ABCD-ABCDEF123456}
예:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\
{CLSID of killed ActiveX control}, Compatibility Flags, 0x0400

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\
{CLSID of killed ActiveX control}, AlternateCLSID, "{CLSID of alternate ActiveX control}"
Internet Explorer는 이 값을 해석한 후, killbit를 수신한 ActiveX 컨트롤이 아니라 AlternateCLSID 값에서 참조된 ActiveX 컨트롤의 인스턴스를 만듭니다.

참고 AlternateCLSID 값을 효율적으로 사용하기 위해서는 kill bit를 초기 CLSID에 설정해야 합니다.
ActiveX 컨트롤 개발자는 "kill bit"와 함께 TreatAs 또는 AlternateCLSID 레지스트리 값을 사용하여 해제된 ActiveX 컨트롤 대신 업데이트된 ActiveX 컨트롤이 제공되었는지를 Internet Explorer에서 확인하도록 할 수 있습니다. TreatAs 값을 사용하는 방법에 대한 자세한 내용은 다음 Microsoft 웹 사이트를 참조하십시오.
http://msdn.microsoft.com/ko-kr/library/ms679737(VS.85).aspx (http://msdn.microsoft.com/ko-kr/library/ms679737(VS.85).aspx)
AlternateCLSID 값을 설정하려면 다음과 같이 하십시오.
  1. 레지스트리 편집기를 사용하여 다음 레지스트리 키에서 해제된 ActiveX 개체 CLSID를 찾습니다.
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\CLSID of the ActiveX control
    여기서 CLSID of the ActiveX Control은 해당 ActiveX 컨트롤의 클래스 식별자입니다.

    Compatibility Flags의 값이 DWORD 00000400으로 설정되었음을 볼 수 있습니다.
  2. AlternateCLSID 문자열 값을 CLSID 키에 추가합니다.
  3. AlternateCLSID 문자열 값의 데이터를 {CLSID of the alternate ActiveX control}로 설정합니다. 여기서 {CLSID of the ActiveX Control}은 업데이트된 ActiveX 컨트롤의 클래스 식별자입니다.
AlternateCLSID 값은 Internet Explorer에 업데이트된 ActiveX 컨트롤에 대한 CLSID로 리디렉션하도록 지시합니다. 최대 10수준까지 체인 리디렉션할 수 있습니다.

AlternateCLSID 값은 다음 버전의 Internet Explorer에서 지원됩니다.
  • Windows 2000용 Internet Explorer 5.01 서비스 팩 2 이상(MS03-004 이상 포함)
  • Internet Explorer 5.5 서비스 팩 2(MS02-068 이상 포함)
  • Internet Explorer 6 서비스 팩 1
  • Windows XP용 Internet Explorer 6(MS02-068 이상 포함)
  • Windows Server 2003용 Internet Explorer 6
  • Windows Server 2003 IA64용 Windows Internet Explorer 7
  • Windows XP용 Windows Internet Explorer 7
  • Windows Server 2003용 Windows Internet Explorer 7.0
  • Windows Vista의 Windows Internet Explorer 7.0
참고 이 문서에 나열되지 않은 Internet Explorer 버전은 제품 수명 주기의 연장 기간 내에 있거나 더 이상 지원되지 않는 것입니다. 여기에 나와 있는 Windows 버전과 Internet Explorer 버전에서도 kill bit를 설정할 수 있지만 지원되는 Internet Explorer 버전으로 업그레이드하고 적절한 업데이트를 모두 적용하는 것이 좋습니다. Internet Explorer의 버전을 확인하는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
164539  (http://support.microsoft.com/kb/164539/ ) 설치된 Internet Explorer 버전 확인 방법
ActiveX 컨트롤용 kill bit에 대한 자세한 내용은 다음 Microsoft Security Vulnerability Research & Defense 블로그 게시물을 참조하십시오.
Kill-Bit FAQ: 1/3부
http://blogs.technet.com/srd/archive/2008/02/06/The-Kill_2D00_Bit-FAQ_3A00_-Part-1-of-3.aspx (http://blogs.technet.com/srd/archive/2008/02/06/The-Kill_2D00_Bit-FAQ_3A00_-Part-1-of-3.aspx)
Kill-Bit FAQ: 2/3부
http://blogs.technet.com/srd/archive/2008/02/07/The-Kill_2D00_Bit-FAQ_3A00_-Post-2-of-3.aspx (http://blogs.technet.com/srd/archive/2008/02/07/The-Kill_2D00_Bit-FAQ_3A00_-Post-2-of-3.aspx)
Kill-Bit FAQ: 3/3부
http://blogs.technet.com/srd/archive/2008/02/08/The-Kill_2D00_Bit-FAQ_3A00_-Part-3-of-3.aspx (http://blogs.technet.com/srd/archive/2008/02/08/The-Kill_2D00_Bit-FAQ_3A00_-Part-3-of-3.aspx)


해당 ActiveX 컨트롤에 보안 문제가 있는 응용 프로그램 공급업체는 해당 ActiveX 컨트롤이 Internet Explorer에서 실행되지 못하게 하는 kill bit을 출시할 것을 Microsoft에 요청할 수 있습니다. 승인된 요청은 앞으로 출시될 ActiveX Kill Bits용 업데이트 롤업 보안 권고에서 처리됩니다. Microsoft는 해당 ISV(독립 소프트웨어 공급업체)가 업데이트된 ActiveX 컨트롤 버전을 이미 제작한 경우에만 취약성이 있다고 확인된 ActiveX 컨트롤에 대해 kill bit을 출시합니다. 취약한 ActiveX 컨트롤이 있는 ISV는 해당 요청과 다음 질문에 대한 대답을 함께 전자 메일로 msvr@microsoft.com에 전송할 수 있습니다.
Posted by SB패밀리