Content Directory Service in Windows 7
The Content Directory Service is a UPnP service. When Windows 7 performs as a digital media server (DMS), Windows 7 uses the Content Directory Service to expose a user's media library to the network. Other devices that are connected to the network start actions against the Content Directory Service to retrieve information from the media library.The Content Directory Service organizes content as items inside a hierarchy of containers. A root container is located at the top of the hierarchy. The root container can contain zero or more child containers. Generally, any container at any level can include additional containers and content items.
Every container in a Content Directory Service hierarchy has an associated version number. This number increases by one every time that something changes inside a container. For example, a device in the network sends a browse or a search action against the Content Directory Service. Then the device obtains a container's version number in the action's response in an argument that is called UpdateID. The root container also has an associated version number. However, the version number of the root container represents the whole hierarchy. If something changes in the Content Directory Service hierarchy, the root version number increases by one.
In addition to the UpdateID argument in browse or in search actions, version numbers are stored optionally in the Content Directory Service state variable that is called ContainerUpdateIDs. ContainerUpdateIDs can only be accessed through events.
As described in the UPnP specifications, the ContainerUpdateIDs state variable carries a list of pairs. The first element in each pair represents a container ID, and the second element describes the container's version number. An implementation of the Content Directory Service generates events that include the ContainerUpdateIDs state variable. Those events are dispatched when changes occur in the Content Directory Service at intervals that are equal to or more than 200 milliseconds (ms).
The Content Directory Service in Windows 7 implements the ContainerUpdateIDs state variable and distributes this variable to any interested receivers in the network through events. The Content Directory Service in Windows 7 correctly publishes the version number of the root container that reflects a recent change. However, the Content Directory Service in Windows 7 does not publish individual version numbers for child containers. This behavior makes Windows 7 not pass the DLNA (Digital Living Network Alliance) Test 7.3.56.1.
Improvements in this hotfix
After you apply this hotfix, the Content Directory Service in Windows 7 provides the correct version numbers for all the containers that are listed in the ContainerUpdateIDs state variable. Therefore, devices can rely on this state variable to optimize cached media library information.For example, you use a device in the network that caches metadata from the user's library on a computer. After you apply this hotfix, the device can listen for events that carry the�ContainerUpdateIDs state variable to perform targeted updates.