decompiled Intels UPnP.dll and modified it to change the ContainerID argument to ObjectID for Browse requests. fixed one other reflection bug too, but that might have been introduced by exporting with Reflector. haven't implemented directory browsing yet, but i've looked at the traces and see how to shape the XML.
also see how the 360 requests the content and skips around using the RANGE header. and that's where i'm stuck. i dont see how the UPnP.dll handles requests for content, if it even handles it at all. so far its handled what all the URLs should be for service requests, but now i need to construct the content URL for a resource ... and i'm stuck. no clue. a little digging into the code, and i see some support for RANGE and streaming objects, but that code doesnt seem to be tied in anywhere. nor do i see any events that come back for content that would let me handle it myself. hmm.
posted to the Intel UPnP forum ... but not much hope there, its mostly dead. looked at what docs there are ... didn't see any URL shaping magic. pretty sure my next step is to see if one of Intel tool samples serves content, and either try to understand the URLs it constructs, or decompile it too.