DropCash via C# and .NET!

Author: Gordon Luk (gluk AT padtie DOT com)
Download Version 1.1: DropCash-1.1.zip
Last edited: 10/8/2004
Generally speaking, this is an experiment in linking Web Services technology with .NET platform programming. Specifically speaking, it's a COM object that lets you embed a dropcash campaign in .NET software extremely easily. Just set up the references in your project, the classes in your toolbar, and you're ready to go.
Open Source the DropCash COM Object! DropCash Campaign
If you find this software useful, I would appreciate a donation towards getting a new workstation for these types of programming projects. If my DropCash campaign hits my goal, i'll open source the COM object (license undecided) so that you'll be able to easily create interfaces for yourself.
This is total BETA software. There is no warranty or guarantee, it's just supplied 'as-is'. Of course, I hope that it doesn't do anything bad to your system, but it's ultimately your responsibility if you choose to download and use it.

What's DropCash?

DropCash is a donation campaign service that links up with paypal. It's mostly being used right now by software or website developers to raise money for their hard work.

Description

This easy to use Windows Component Library allows you to easily build in DropCash donation support to all your .NET applications. As seen in screenshot 2 below, it's as simple as specifying your typekey account and campaign name in the User Control properties in VS.NET. The screenshot and test application show off the 3 built-in interfaces included with the DLL.

Figure 1
Figure 1: The DropCash test application demonstrates the three interface styles included.

Figure 2
Figure 2: Setting up your DropCash campaign is as easy as setting up these object properties.

Figure 2
Figure 3: When you meet your campaigns, you can programmatically take action based on the result of the component's campaignMetGoal() function. Even if you don't, a note will appear announcing the success of your campaign.

Usage

For now (since I haven't written an installer), you should do the following:
  1. Right click on your solution within Solution Explorer in VS.NET, and select Add Reference...
  2. Browse to the place where you downloaded DropCash.dll, select it and press OK to return to the main VS.NET window.
  3. Right click on your toolbox, and select Customize toolbox...
  4. Click on the .NET Framework Components tab, then click Browse, and find DropCash.dll again. Press OK to return to the main menu, where you should notice three new components: DropCashSmall, DropCashMicro, and DropCashWide. These are the frontend components i've included.
  5. Drag a component to your form to include it. Within properties, set your userid to your Typekey ID you use on DropCash, and enter your campaign string (with underscores) to set up the component. (See Figure 2)
  6. Set up your application to take some sort of action when you get a 'true' value back from the component interface's campaignMetGoal action (See Figure 3. For example, release bonus features, or remove a nag screen. It's up to you to make an incentive to donate to your campaign!
  7. ...
  8. Profit!

Technical Details

The architecture consists of a backend class, DropCashBackend, that downloads campaign information via a DropCash XML Feed, along with a choice of frontend, which performs the user interactions separately from the backend's data processing. This allows for easy and quick customization of new interfaces, without duplication of existing code.

Changelog

1.1 - 10/8/2004
    * Added public bool campaignMetGoal() to all interfaces (and backend class)
      to allow programs that use the application to take special actions if
      the campaign has met its goal.
    * Strips HTML tags from Description in XML feed.
1.0 - 10/5/2004
    * Initial Release

Known Issues

As of now, there are no "known issues", but so far, it's only been tested on WinXP with Firefox 1.0PR, 0.9.2, Mozilla 1.7.1, and IE 6.0.29... Email me if you'd like to report another working configuration, or if you find any bugs.

Thanks

Return to your regularly scheduled programming