Is the string returned by IMMDevice::GetID preserved across reboots? In other words, if I store the string in the registry, can I later, after a reboot, retrieve that string in order to open the same endpoint again with IMMDeviceEnumerator::GetDevice? From my experimenting, that seems to be the case, but I'd like to make sure it's really a valid thing to be doing. The documentation says the ID string can be used in another process or at a later time, but how much later can "later" be, given the warning that the contents of the string may change in future implementations of the MMDevice API? Is a service pack or even a Windows Update going to break what I'm doing? Jeff Pages