WinampSOAP - SOAP Interface for Winamp


October 9, 2001

I made my first release. It has no commenting and I just realized that I didn't add any of the license text to any of the source files (which I will do immediately). Also, I still need to release the SOAP API because otherwise, you'll just have to reverse engineer the EasySoap (it's all in the WinampDispatch class, btw) to get it.

gen_soap v0.1.0 - SOAP Server Plug-In for Winamp

This plug-in for Winamp has a built in basic web server that will handle SOAP payloads. It will then decode the SOAP payload using the EasySoap++ library and make the appropriate actions on the server. This release does not contain any web server security or any security for control of Winamp. Use in a secure environment or beware of the security risks faced by running this plug-in.

This plug-in takes advantage of the following libraries:

Binary Release - gen_soap_v010.exe

The binary release is a PIMP installer using the Nullsoft Plug-in Mini Packager.

The binary release installs the EasySoap and Expat dlls in the Winamp directory, while placing the gen_soap.dll file in the default plug-in directory.

Source Release -


The source release includes all of the source files as well as Visual Studio 6.0 workspace and project files. However, to fully use the workspace and project files and compile the source you will need to download the following:


For the EasySoap++ and Expat libraries, you will need to download the source and build the two libraries yielding the following files:

For PIMP, just run the pimp131.exe file and install PIMP on the system with defaults because that is where the project post-build command is expecting it.


The file comes with the following directory structure:

is an empty folder where the Debug and Release builds from the project file will be output the compiled source.
this is where the easysoap.dll and expat.dll files need to reside in order for the gen_soap.psc PIMP script to find them.
the contents of the \include directory in the EasySoap++ distribution should be copied into this directory (including the config subdirectory).
the easysoap.lib and expat.lib files should reside here because this is one location where the project file will look for them during linking.
this is the source code directory for gen_soap.

If all of the files are in the right place it should build just fine and create the PIMP installer or at least the gen_soap.dll file. The expat.dll and easysoap.dll need to be in the Winamp directory and NOT the plug-ins directory for this to work. The PIMP installer installs the files in this fashion.