About
New! Indigo and P2P
Windows Peer-to-Peer Networking
MSDN Discussions in Windows SDK: Networking API
Windows XP Peer-to-Peer SDK FAQ

P2P is going to play a big role in the future of distributed applications on Windows platforms. One big reason for this is the Microsoft Peer-to-Peer SDK, which gives developers a real P2P infrastructure to work with.

Thoughtpost.P2P Updated on May 10, 2004 with New Support for the Grouping API

To help make it even easier to build P2P applications, I have developed a managed wrapper for the P2P SDK. I have wrapped the Graphing API and the Grouping API in a unified programming model so that you can use both from within the same application with very little change in code. You can download the library below, as well as some sample applications that show you how to work with it. This library will be an important piece of an upcoming project of mine, and so it is of great benefit to me to have lots of people download it and kick the tires. I want your feedback, so please send comments, questions, and dinner invitations to p2p@thoughtpost.com. Also, check out my blog for any updates.

The latest version of the library provides initial support for the Grouping API. Now you can work with groups and invitations as well as graphs. One of the best features of the new version is that both Group and Graph objects support common interfaces, so you can create an application that works against either type of peer network. Just code against the IPeerRecordSource interface defined in the library. There are also common interfaces for node access and direct connection support.

In the latest version, we have also updated the sample applications to include support for Grouping. There is addition of a brand new sample, MagicFolder, which shows how to use the Thoughtpost.P2P Grouping support to share files between peers.

The Grouping API support is brand new, so give us feedback and let us know how it works for you.

What can you expect from this page in the coming weeks? Documentation, more samples, enhancements to the Thoughtpost.P2P library, and support for Web Services (for people who just can't wait for Indigo).

Overview

The Thoughtpost.P2P managed wrapper gives you access to the features of the P2P SDK without the hassles of PInvoke or the need to work in Managed C++. In the current version, you can:

- Manage P2P identities

- Create, open, and delete graphs and groups

- Add, update, and delete peer records

- Handle P2P events as .NET events

- Direct connections

Sample applications show how to:

- Work seamlessly with both graphs and groups

- Browse and monitor the records in a graph or group

- Share files using groups


For now, there is no real documentation or firewall management, but there are sample apps, and for developers familiar with the P2P SDK, the Thoughtpost.P2P API should be very familiar, hopefully with a few shortcuts to make your life easier.

Thoughtpost.P2P
Thoughtpost.P2P.dll
Thoughtpost.P2P.dll Source Code (Managed C++)
Sample Applications
MagicFolder - C# Sample using Groups to do file sharing
P2PChatDotNet - C# Sample based on a combination of the Graph and Group Chat samples of the P2P SDK
IdentityBrowser - C# Sample showing how to work with Identities
RecordBrowser - C# Sample showing how to view the records in a graph
More to come...