2010-12-08 3 views
2

나는 문제가있는 Firefox 3.x에서 한동안 사용하고있는 NPAPI 플러그인이 있습니다. 목적은로 정의된다Windows 7의 NPAPI 플러그인 문제

다음 -

<object class="someClass" id="pluginobj" type="application/x-plugintype"></object> 

그때 다음과 같은 형식으로 사용하여 메소드 호출 -

if(document.getElementById("pluginobj") != null) 
{ 
    document.getElementById("pluginobj").someMethod(someParams)); 
} 

이 내가 그것을 수행해야하며, 항상 좋은 일했다 이해하는 방법이다 . 그러나, 나는 최근에이 플러그인을 Windows 7 컴퓨터 (Firefox의 같은 버전)에 설치했지만 플러그인에서 정의 된 함수를 찾지 못해 다음과 같은 오류가 발생합니다. -

오류 : 문서 : someMethod가 함수가 아닙니다. someMethod가 함수가 아닙니다.

플러그인 내에서 전혀 변경된 사항이 없으며,이 오류는 특정 메서드가 아니라 호출 된 메서드에서 발생하며 Windows XP 컴퓨터에서도 여전히 정상적으로 작동합니다. 아무 문제 없어.

매우 혼란스러워! 아무도 도와 줄 수 있습니까? 감사.

참고 :가 나는 또한 내 플러그인 내에서 로그인 시도하고 심지어 NP_Initialize 및 NP_GetEntryPoints 방법에 점점 아니에요 나타납니다.

필자는 의존성과 라이브러리가 플러그인에 연결될 수 있다는 몇 가지 제안을 보았지만 win7에서 누락 될 수있는 것이 무엇인지 모르겠습니다.

종속성 워커가 "side-by-side 구성 정보가 잘못되었습니다"라는 오류를 표시합니까?

+0

FF의 정확한 버전을 지정할 수 있습니까? FF 3.6.4부터 플러그인은 별도의 프로세스로 시작됩니다. 아마도 문제와 관련이 있습니다. Windows 7의 Chrome에서 플러그인을 사용해 보셨습니까? – DReJ

+0

FF는 3.6.12 버전입니다 - 문제없이 내 XP 시스템에서 실행중인 동일한 버전입니다 ... –

+0

새 노트가 의미가 있습니다.side-by-side 문제가있는 경우 Windows 오류 로그를 검사하여 누락 된 어셈블리를 파악할 수 있습니다. – DReJ

답변

0

npapi 플러그인의 다른 DLL 파일에 연결하고 있습니까? Windows 7은 DLL 파일을 찾는 방식이 다르게 작동하지만 세부 사항을 알지 못합니다. 내가 과거에 플러그인으로 이것을 보았던 시대는 윈도우 7에서 dll 파일 중 하나를 찾을 수 없다는 것이 었습니다. 종속성 dll 파일을 system32 디렉토리에 복사해볼 수 있습니다 (영구적 인 것이 아니라 문제인지 확인하기 위해). 나는 그것이 그것을 발견 할 수있을 것이라고 기대할 것이다.

그게 문제라면 불행히도 문제를 해결하는 방법이 확실하지 않지만 도움이 될 것입니다.

side-by-side 구성 문제에 기반한 또 다른 가능성은 Visual Studio 프로젝트가 Windows 7에없는 DLL 중 특정 버전을 필요로한다는 것을 알려주는 매니페스트를 만드는 것입니다 참조 : http://buffered.io/2008/05/17/resolving-side-by-side-configuration-issues/

매니페스트를 사용 중지하기 전에 플러그인에서이 문제를 해결했다고 생각합니다. 나는 확실하지 않다. 나는 FireBreath이 npapi 플러그인 dll을 생성하는 방식으로이 문제를 겪어 보지 못했습니다. 그래서 작년에 걱정할 필요가 없었습니다. FireBreath은 IE와 Firefox (activex 및 npapi)에서 모두 작동하며 이와 같은 문제를 추적하기에 좋은 커뮤니티가 있습니다.

+0

의견을 보내 주셔서 감사 드리며 어제 끝에 문제를 해결했습니다. 기본적으로 매니 페스트 파일은 프로젝트가 제대로 구성되지 않아서 필자가 실제로 필요로하지 않는 종속성을 끌려고했습니다! :) –

+0

그럴거야 =] 대답을 표시하거나 하나 추가 = =] – taxilian