Code Archive

Here's a collection of code, utilities & samples, that I've produced over the years.

Blogging Related

RESTLog.NET and Relaxer

RESTLog.NET is an implementation of the RESTLog API in C# using ASP.NET. Relaxer is a Winforms/C# based RESTLog client application. This is the software i use to manage my weblog.

ZakBlog

A weblogging client tool for use with servers that implement the metaweblog API.
> more

Syndirella

I've added a number of extensions to the RSS aggregator Syndirella.

blogping.root

Is a tool for Radio Userland that extends it capabilities to ping servers running the weblogs.com ping interface.

pingbacks.root

Is a tool for Radio Userland that adds an automatic pingback client to its blogging tool.

Blogging from Word

I wrote some tools that allowed you to blog from Word.

Weblogs Watcher

Is a backend Web Service for getting notifications that a blog has changed.

WSDL FM

Is a WSDL client tool for Radio Userland. It generates UserTalk macro's for making SOAP calls given a WSDL file.

Visual Studio

vsGoogle [updated 12/8/2001]

I got fed up of cut'n'pasting between Visual Studio and a browser to do searches, so I wrote a little Visual Studio Add-In that adds search functions for my top searches.
> more

WinAmp 3.0 plugins

MSNAmp [updated 6/7/2003]

A Winamp3 plug-in that updates your MSN Messenger name ala MSNMangler.
> more

WS-Amp

A SOAP 1.1 server plug-in for Winamp3.
> more

COM plumbing

RamTx : A Resource Dispenser for the Millennium

A MTS Resource Dispenser and Resource Manager that provided an in memory transactional property bag (aka transactional SPaM)
> more

Interceptor City

A collection of code and notes from some work I've done using Keith Brown's very cool Universal Delegator
TraceHook (with Chris Sells)
A method call hook that dumps interface names, and for typelib described interfaces it also dumps method names and parameters. Recently updated to add support for the IPersistPropertyBag interface. (See the Activation Tricks to find out why)

Activation Tricks
A number of examples of how to hook the delegator in at object creation time

HTTP and SOAP

application/soap+xml

SOAP 1.2 changes the content type for SOAP messages from text/xml to application/soap+xml. In addition it adds a HTTP GET binding so that you can make HTTP GET requests, and receive SOAP messages in reply, the GET binding is obviously easy to test with a browser. Unfortunately by default Internet Explorer will prompt you to save/open the response, rather than just displaying the XML. Following a pointer from Sam Ruby, here's appsoap.reg, a reg file that changes the IE config so that it display the XML directly.

SSL

From some discussions on the SOAP list, a quick demo of how to use OpenSSL to retrieve HTTPS pages. Download the VC++ project here.

In addition, PocketSOAP contains code to do SSL using the SChannel SSPI interface in Win32, and the SSL winsock support for PocketPC.

Smtp-Soap

I was working on (had working) an XSLT based SMTP SOAP server, it however soon got converted to 4s4c.

MS Embedded Visual C++ project files for Expat for CE

A bit of a mouthful there, but I've been using the mov Software port of Expat for CE on a recent Pocket PC (aka Windows CE3.0) project. the mov Software port uses the older CE2.x build environment which is Visual Studio 6 (with the relevant SDK's installed), whilst Pocket PC development is done in the new Embedded Visual Tools. I put together a clean set of EVT projects to build Expat for Pocket PC. You download them here, you'll also need the Expat for CE source from mov Software
One problem with the above, is that its not the latest version of Expat, in particular if you try and do a Unicode build [i.e. XmlChar == WCHAR] you'll run into all sorts of problems. In which case, you might want to grab the current PocketSOAP source, which includes a fresh port of Expat to PocketPC that doesn't have these problems.

What else have I been upto ?

Reading

If you're looking for my reading list, its moved.

May 25, 2003, Simon Fell