Archive for November, 2005

Using the Windows Media Player Plugin


Firstly, from IRC it appears that newer versions of WMP no longer include the Netscape plugin. The stuff here seems to be just the plugin files – should come in handy. Thanks to… err, whoever told me about it on IRC. (Sorry)

Second, hacking the WMP plugin to handle types it doesn’t want to admit it can handle:

  1. First, make a copy of npdsplay.dll somewhere that gets scanned. The source is in C:\Program Files\Windows Media Player by default, I think. I like to copy to %appdata%\Mozilla\plugins since that sticks around across installs (and dist/bin folders in clobber builds, whatever) and gets picked up by all Mozilly browser thingies. Hack the copy so nothing happens to the real plugin ;).
  2. Grab resource hacker (or Visual Studio / MSDev / whatever). Look at the Version Info section. The interesting items are…
    • FileExtents is a pipe-separated list of file extensions. Not sure if it’s all that relevant… :p
    • FileOpenName seems to be a pipe-delimited list of descriptions to show in File -> Open dialog boxes. Not sure who uses plugins that way.
    • MIMEType is the key – it’s a pipe-delimited list of MIME types to accept.
    • See devedge for more interesting info.
  3. So, edit the lists (try to keep the three in synch, since they’re the columns in about:plugins I think).
  4. Save, and kill pluginreg.dat (in %appdata%\Mozilla\Firefox).
  5. Marvel at the new updated about:plugins

Hopefully this will help someone.


Findbar as an Extension


Combining the two previous posts 🙂 Trying to figure out how to put stuff here though, since it appears that the blog won’t take data: URIs. For now, just copy the link and replace everything up to and including /data-uri/ with data:. I’m hoping to somehow insert JS on the page later to automatically transform the link on the browser side…

The XPI is here.

Yes, that just made this a 3k blog post. Yes that made this page slow to load. Until I find some place better to post stuff like this, please live with it.

Getting ChatZilla/XULRunner to Use Extensions


I’m using Chatzilla on XULRunner for IRC (via the instructions here. I wanted to get DOM Inspector to work though… so here’s some stuff I needed to get CZ to even understand extensions. (The DOMi-specific stuff will be in the next post.)

As I was using my own 1.8-branch XULRunner, RTFS helped. In the application ini file (cz.ini), create a new section, [XRE]. In that, set EnableExtensionManager=true. After that, make an appropriate chrome://branding/locale/ file for the brandShortName entity. Done.

This causes the extension stuff to happen, and they can just go in /extensions/ in the profile, or /extensions/ in the app dir. Just like Firefox and Tbird, yay. Now to figure out how to get it to show EM… 😀

FindBar in Chatzilla on XULRunner


Managed to get Chatzilla on XULRunner to work (somewhat) with the find bar, instead of the find dialog box. It’s a totally hacky implementation, and it sucks. But it gets me FAYT, which is all I care about at this point. It would be much, much nicer if I can just get find box + old FAYT.

The code is here – replace /chrome/xr/overlay.xul in the CZ package from rdmsoft with it. Also available on pastebin in case doesn’t like my data: URI.

Still need a better way to hook <browser> creation, and import the findbar XUL better – as it is the colours on Mac will be wrong….

Oh, and appearently findbar / FAYT was apprearently not in Chatzilla by design. That’s fine with me – needing to know where you’re focusing and stuff would indeed make it crappy for normal end users; I’m just glad I don’t seem to be one of them.