0
votes

I am further developing a NPAPI Plugin in Qt. I got the source code and a precompiled windows (DLL) version of the Plugin. I added some functionality and tried to compile it using the default Build process of Qt Creator. In my edited case as well as in the original case the compiling worked perfectly well on windows and linux. The problem is, that the plugin itself is only usable on the linux machine. On Windows (XP SP3) there is an error mentioned, that my specific scriptable methods wouldn't exist. Is there a special way or toolchain for compiling on Windows? Or is there way to locate the failure?

Thanks in anticipation!

1
Currently, it says: Error: [Exception... "Failure" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: file:///.../Tests/cross-site.js :: <TOP_LEVEL> :: line 108" data: no] - Thor
that's weird... that doesn't sound plugin-related. I've never used QT, but I'm the primary maintainer of FireBreath (firebreath.org); never seen an error like that. Does it show up in about:plugins? - taxilian
Yes, it does! This error was also new to me. Couldn't locate it, but the same plugin already worked in FF4 and does work in FF3 continuously. The error which then is mentioned says that the scriptable functions (viewConfig and request) could not be found, but can be found, when the source is compiled and run under linux. - Thor

1 Answers

0
votes

Here are some things to check and to try:

  1. Set a breakpoint in NPP_New (you'll have to find it in QT's framework, I don't know where it is); step through until you find a problem
  2. Make sure that NPP_GetValue is returning an NPObject on request; if not, then you definitely won't get any scripting API
  3. Make sure that QT's framework isn't still trying to use XPCOM for scripting.