Package Files

From wiki.jriver.com
Revision as of 18:09, 11 January 2007 by Gateley (talk | contribs)
Jump to navigation Jump to search

An MJP file is just a simple script file which is used to install plug-ins to Media Center (and Media Jukebox). There are two versions of package files, version 1 has package files resembling Windows INI files, and version 2 package files are based on XML.

Version 2

Version 2 package files are based on XML. They begin with

<?xml version="1.0" standalone="yes" ?>

The contents are wrapped in a MJPF atom:

<MJPF version="2.0">
...
</MJPF>

There are two children: Package and Actions:

<Package>
...
</Package>
<Actions>
...
</Actions>

The Package section contains Name, Action, URL, Version, and HasActions:

<Name>Package Example plug-in</Name>
<Action>UNZIPDIR</Action>
<URL>http://www.jrmediacenter.com/PackageExample.zip</URL>
<Version>1.0.10</Version>
<HasActions>1</HasActions>

And the Actions section contains a FileEntry for each file. The FileEntry contains a File and as many Action elements as needed:

<FileEntry>
  <File>server_upnp.dll</File>
  <Action>
    <Command>COPY_PLUGINDIR</Command>
  </Action>
  <Action>
    <Command>REGISTER</Command>
  </Action>
</FileEntry>

Version 1

Version 1 package files look like Windows INI files with two sections: [Package] and [Action]. The [Package] section contains entries for Name, Action, Version, and URL. The [Action] section contains entries for files, and actions to be done on those files. For example:

File1=CoolFile.exe
File1Action1=RUN

The filename can be *.*. Multiple files are specified by using File1, File2 etc. Multiple actions are specified by numbering the actions: File1Action1, File1Action2 etc.

Actions

  • COPY_INSTALLDIR - copy files to installation directory
  • COPY_PLUGINDIR - copy files to plug-ins directory
  • COPY_HELPDIR - copy files to help directory
  • COPY_VISUALIZATIONS - copy files to visualization scripts directory with plug-in name appended.
  • COPY_TRACKINFOS - copy files to track infos directory with plug-in name appended.
  • COPY_VISSTUDIO - copy files to Vis Studio directory
  • COPY_SYSDIR - copy files to system directory
  • COPY_WINDIR - copy files to windows directory
  • REGISTER - registers specified COM or ActiveX file.
  • RUN - executes specified file
  • RUN DONTWAIT - executes specified file but does not wait until file file exits. Useful when running ReadMe files.
  • REG_PLUGIN - register Media Jukebox or Winamp plug-in


Example: including the MJP file insize the zip file that is distributed

Here's an example from scthom that shows how to package a plug-in and the MJP file in a single zip. It is required by the way SourceForge hosts files, though having the MJP outside the zip file and a real link for the URL is easier.

[Package]
Name=WavPack Plugin
Action=NONE
Version=2.1.0
URL=in_wavpack.dll
[Action]
File1=in_wavpack.dll
File1Action1=COPY_PLUGINDIR
File1Action2=REG_PLUGIN

Use Action=NONE when the mjp is inside the zip.