Traffic Splitter app (like RouteSentry)

I've written an application (in C# Express 2008) to split traffic for Windows users, which works much like RouteSentry. It works on Windows XP SP2 and newer versions of Windows, including Windows 7 x64.
My aim was to create something like RouteSentry, but without all the shortcomings and problems that exist due to RouteSentry.
Project home: http://code.google.com/p/traffic-splitter/

Microsoft .NET Framework 2.0 & Windows Installer 3.1 (or newer) are required for the application to run - both of which are included by default in Windows Vista & 7
.Net Framework 2.0 (22.4MB) can be downloaded locally from this link.
.Net Framework 3.5 SP1 (231.5MB) can be downloaded locally from this link.

The application requires administrative privileges to manipulate the routing table. The application would request administrative privileges if it doesn't have.

If you want to have more than 1 PPPoE connection to be connected at the same time, then you need to have to:

use RASPPPoE if you're on Windows XP
I'm looking for someone to test the registry entry mod for Windows XP, instead of using RASPPPoE. See my post: http://mybroadband.co.za/vb/showpost...7&postcount=93
It won't hurt to import the WanEndPoints.reg file meant for Vista/Win7. In most cases that one would be the correct one, and not my WanEndPointsXP.reg!

Gladiator for his assistance to get the coding structure to industry standards AND for the AsyncCallback code to freeze the UI thread while updating list of local routes

Stephen White for his guide on setting up my app

List of known issues with Beta 6.17:

Sometimes the setup is unable to update the version, giving the following error: "You cannot start application Traffic Splitter Beta from this location because it is already installed from a different location"
Solution A: Move the setup to the location where you've run the setup from in the first place
Solution B: Uninstall the old Traffic Splitter version first from Add/Remove programs and then run the new setup from any desired folder

No automatic updates, although it does have a button to check for updates

No documentation

Persistent routes not supported yet

Critical: The adapters' state doesn't always update automatically, resulting in TS not automatically reconnecting.Resolved: Implemented a timer to frequently update the adapters' states, instead of simply relying on the RasDial ConnectionWatcher.

Critical: The implementation of the timer (see issue above) resulted in my application using considerable memory after a while (like a couple of KB/s).Resolved: Fixed memory leak in IpxConfig library (that I'm using to get the network interface information from), which existed from the first beta versions!

Last edited by Pada; 27-04-2011 at 06:30 PM.
Reason: Updated to Beta 6.17 - Allowing updating to any auxilary interface

Good work, it's about time someone wrote a replacement for RouteSentry (no offense to Antib0dy but that program was starting to have serious OS issues) and the features you've added are welcome.

I'd love to see some source code, I was going to write a program like this myself but then I got a WRT54GL

Seriously though it's lots of effort, when I looked into it I wanted to do it in C++ but if not using .NET you're pretty much tied into using Windows API calls and those have UNICODE and ANSI types, functions, etc. and it was just a mess to support both, gave up before I began

So simply download that registry file if you're using Vista or Windows 7. Then restart your PC. Once it's in Windows again, you should be able to dial more than 1 connection at once.

For those of you that are interested in the source code: Traffic Splitter Beta 3 Source
If there's a big enough demand for it, I can maybe try and host the source on google code for SVN access. I'm just not that keen on administrating a project like this. I'm open to suggestions or people willing to manage it

On the other hand if it is on the SVN it would make it easier to create patches. You don't really have to administer it but that kinda defeats the purpose of the SVN (IE. people write patches but they never make it to trunk).

czc, I'll have to code something specific for Windows 2000, because it doesn't support the WMI query that I'm currently using, which would result in the app not showing any network adapters. Although, it would still show the PPPoE connections.

Thanks for the input. I've now selected LGPL.
Basically I want to allow other people to have access to the source code, as long as they don't redistribute it claiming it to be their own or to make a profit out of it without having made any modifications to it.