0

임베디드 dll (COM)을 사용해야하는 회사의 인트라넷 페이지를 작성하고 있습니다. dll은 모든 클라이언트 컴퓨터에 등록되므로 페이지에서 다운로드 할 필요가 없으며 실행하면됩니다.IE 인트라넷 영역의 ActiveX 컨트롤 - 프롬프트없이 차단 되었습니까?

나는 컨트롤 포함하려면 다음 코드를 사용하여 시도했다 :

var newObj = new ActiveXObject("servername.classname"); 

을 그리고 로컬에서 테스트 할 때이 작동하지만, 인트라넷에서 개체가 할 수없는 JS 오류 "자동화 서버 인스턴스화 실패 개체 만들기 ". IE (7)가 기본적으로 인트라넷 영역에서 ActiveX 컨트롤을 차단하기 때문에 이것이 의심 스럽습니다. 나는 또한 운이없는 <object> 태그를 사용해 보았습니다.

필자는이 작업을 끝내기위한 마감 기한이 있으며 그 전에는 IT 부서가 회사 보안 설정을 변경하는 일이 거의 없을 것입니다. 그렇게하기가 쉽지 않은 경우에는 그렇지 않습니다.

내 질문은 : IE에서 기본 보안 설정을 변경하지 않고 자동으로 컨트롤을 차단하는 대신 사용자에게 메시지를 표시하도록 컨트롤을 포함 할 수있는 가능한 해결 방법이 있습니까?

회사의 거의 모든 사람들이 IE의 일부 버전 (최대 7 개)을 사용하므로이 기능 만 있으면됩니다.

모든 도움과 의견을 환영합니다.

감사합니다.

업데이트이 절대적으로 할 수없는 경우 , 나는 this question에서 서버 스크립트에서 DLL을 사용하여 찾고 있어요. 나는 여전히 컨트롤을 클라이언트에서 사용할 수있는 좋은 사용자 인터페이스를 가지고 있기 때문에 클라이언트 쪽에서해야 할 것이다.

답변

1

<object> 태그로 퍼가기를 원하면 메시지를 표시해야합니다. 그런 다음 객체 태그를 통해 호출 할 수 있습니다. 또 다른 트릭은 다음을 넣는 것입니다 : <!-- saved from url=(0013)about:internet -->을 html 파일의 첫 번째 줄로; 이것이 인트라넷 영역에서 작동하는지는 모르지만 localhost를 통해 페이지가 인터넷 페이지 인 것처럼 처리됩니다.

나는 FireBreath 플러그인 (activex 컨트롤 역할을하며 사용자가 설명하는 방식으로 호출 할 수 있음)을 사용했으며 이와 같은 문제가 없었습니다. 행운을 빕니다!

+0

감사합니다. '' 태그를 사용하여 시도했을 때 작은 상자를 만들었고 객체 태그 사이에 html을 표시했습니다 (객체가 내가 생각한 인스턴스화에 실패하면 표시됩니까?). 나는 레지스트리에서 clsid를 얻었다. 다시 로컬로 잘 작동했습니다. 어떤 아이디어? – Flash

+0

activex 객체는 아마도 그런 식으로 인스턴스화되도록 설계되지 않았습니다. "구원받는 사람"선을 사용해 보셨습니까? – taxilian

+0

인터넷 영역 보안 설정이 인트라넷보다 엄격한 것은 분명하지만 그렇게하려고 했습니까? – Flash

관련 문제