This directory contains support files for running mDNS on Microsoft Windows
-and Windows CE/PocketPC.
+and Windows CE/PocketPC. Building this code requires the Windows SDK 2003
+or later. The CodeWarrior builds require CodeWarrior 8 or later and if using
+CodeWarrior 8, the newer Windows headers from the Mac CodeWarrior 9 need to
+be used.
-mDNSWin32.c & mDNSWin32.h are the Platform Support files that go below
-mDNS Core. These work on both Windows and Windows CE/PocketPC.
+mDNSWin32.c/.h
+
+ Platform Support files that go below mDNS Core. These work on both Windows
+ and Windows CE/PocketPC.
-DNSServices is a higher-level API for using mDNS. It manages memory, tracks
-browers and registrations, etc.
+DNSSD.c/.h
-DNSServiceDiscovery is an emulation layer that sits on top of DNSServices
-and provides the Mac OS X DNS Service Discovery API's on any platform.
+ High-level implementation of the DNS-SD API. This supports both "direct"
+ (compiled-in mDNSCore) and "client" (IPC to service) usage. Conditionals
+ can exclude either "direct" or "client" to reduce code size.
+
+DNSSDDirect.c/.h
+
+ Portable implementation of the DNS-SD API. This interacts with mDNSCore
+ to perform all the real work of the DNS-SD API. This code does not rely
+ on any platform-specifics so it should run on any platform with an mDNS
+ platform plugin available. Software that cannot or does not want to use
+ the IPC mechanism (e.g. Windows CE, VxWorks, etc.) can use this code
+ directly without any of the IPC pieces.
+
+RMxClient.c/.h
+
+ Client-side implementation of the DNS-SD IPC API. This handles sending
+ and receiving messages from the service to perform DNS-SD operations
+ and get DNS-SD responses.
+
+RMxCommon.c/.h
+
+ Common code between the RMxClient and RMxServer. This handles establishing
+ and accepting connections, the underying message sending and receiving,
+ portable data packing and unpacking, and shared utility routines.
+
+RMxServer.c/.h
+
+ Server-side implementation of the DNS-SD IPC API. This listens for
+ and accepts connections from IPC clients, starts server sessions, and
+ acts as a mediator between the "direct" (compiled-in mDNSCore) code
+ and the IPC client.
+
+DNSServices is an obsolete higher-level API for using mDNS. New code should
+use the DNS-SD APIs.
+
+DNSServiceDiscovery is an obsolete emulation layer that sits on top of
+DNSServices and provides the Mac OS X DNS Service Discovery API's on any
+platform. New code should use the DNS-SD APIs.
Tool.c is an example client that uses the services of mDNS Core.
ToolWin32.mcp is a CodeWarrior project (CodeWarrior for Windows version 8).
-ToolWin32.vcproj is a Visual Studio .NET 7 project. These projects builds
+ToolWin32.vcproj is a Visual Studio .NET 7 project. These projects build
Tool.c to make rendezvous.exe, a small Windows command-line tool to do all
the standard Rendezvous stuff on Windows. It has the following features:
RendezvousBrowser contains the source code for a graphical browser application
for Windows CE/PocketPC. The Windows CE/PocketPC version requires Microsoft
eMbedded C++ 4.0 with SP2 installed and the PocketPC 2003 SDK.
+