god but will it give me the address of files on the desktop
Well no.... it will give you the address of an active File Explorer window as requested.
If you just want to get to files on the desktop you can just look at the contents of C:\WINDOWS\DESKTOP, or better still, as Windows may be installed elsewhere, use the DESKTOP subdir of GetWindowsDirectory().
Or better still use:
LPITEMIDLIST pidl;
SHGetSpecialFolderLocation(NULL, CSIDL_DESKTOP, &pidl);
// Convert the item ID list's binary
// representation into a file system path
char szPath[_MAX_PATH];
SHGetPathFromIDList(pidl, szPath);