C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 팁&트릭
C++Builder Programming Tip&Tricks
[650] 익스플로어7에서 ShellExecute()로 웹 페이지 호출이 안되는 이유
김호광 [testcode] 8853 읽음    2007-05-28 23:29
익스플로어7에서 ShellExecute()로 웹 페이지 호출이 안되는 이유


제가 만들었던 ActiveX가 어느 날부터 실행이 안된다는 항의를 받게 되었습니다.

그래서 오늘 디버깅하고 테스트한 결과 좀 황당한 사실을 알게 되었습니다

IE 7에서 웹 url을 실행할 때 실행이 안된다는 것입니다.

ShellExecute(0, "open", "http://www.Borland.com", "", "", SW_SHOWNORMAL);  // C++

볼랜드 포럼 어느 페이지에 있는 소스입니다.

안될 이유는 없지요. shellapi.h까지 넣었는데도 불구하고 안됩니다.

더구나 WinExec()도 실행이 안되는 사태를 맞이하여 문제 풀이에 들어갔습니다.

그러고 보니 제 개발 환경이 우연치 않게 익스플로어 7이 인스톨 되어 있던 것이였지요...

다른 pc와 테스트를 교차로 한 결과 IE7에서는 피싱 방지를 위해서 웹페이지 url 호출 및 웹 경로로 된 파일의 다운로드를 못하도록 막아 놓았더군요.

그런데!!!

ActiveX에서 html 파일을 로컬 드라이브에서 생성하여 그 파일을 생성하니 생성이 되더군요

test.htm을 만들어서 실행했습니다.

웃긴 이야기지만 로컬 경로에 있는 html 파일을 웹 브라우저로 실행이 가능하고 url로 되어 있는 건 실행 방지가 되어 있다는 것이지요..

ActiveX에서 로컬의 html 파일에 피싱 페이지를 넣어서 실행이라도 시킨다면 얼마나 우숩겠습니까...

비스타에서도 역시 테스트해보니 좀 강화 되었을 뿐이지, 각종 파일 실행이나 그런 점이 완전하게 막히지는 않았더군요.

일관성 있게 보안 정책이 정해지지 않아서 솔직히 MS에 많이 실망했습니다.

testcode~

+ -

관련 글 리스트
650 익스플로어7에서 ShellExecute()로 웹 페이지 호출이 안되는 이유 김호광 8853 2007/05/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.