Ian Tindale wrote:
>
> Where do I find info on things like:
>
> [various questions about XPInstall]
The netscape.public.mozilla.xpinstall newsgroup is a good place to start :-)
> What on earth is an xpi file,
a zip archive with an "install.js" install script. The "xpi" extension
(pronounced "zippy") is short for XPInstall.
> how does it work,
The archive is downloaded, the "install.js" file is extracted, and then
executed in the XPInstall context
> what is it supposed to do?
Generally "install" things, but the details are up to the author of the
install package.
> What should be the effect of running it? What files should magically
> appear where, and what do they do?
Whatever the author of the install script has told it to do. You can ask
this question for a specific .xpi such as flash.xpi, but these questions
can't be answered in the general case.
> Are plugins only installable if they can find an application called
> netscape.exe?
Now we've switched install programs and aren't talking about XPinstall or
.xpi packages anymore. Plugins will run when they are installed wherever the
browser will look for them, but some install programs may have made
assumptions or restrictions on where they will install themselves. It's
possible that Macromedia and other vendors have not updated their own native
installers to know about Netscape 6.
> Why are plugins in MSIE and Netscape so different - wouldn't it be
> sensible if there were some sort of 'plugin definition architecture' or
> agreed interface,
There is. the same flash plugin .dll will run when put in the IE plugins
directory, the Communicator plugins directory, or the Netscape 6/Mozilla
plugins directory.
> which might enable platform independant and browser
> independant operation (thinking wireless and television here -
> uncontrollable processor heritage like ARM, etc., not just a computer
> with a browser - x86, PPC or whatever)
Plugins are shared libraries loaded dynamically using standard system OS
calls. They must be valid executables for the platform and thus cannot be
platform independent. If you want "cross-platform" then consider Java
applets and applications instead as a possible solution.
-Dan Veditz