yoy.be "Why-o-Why"

Refresh Desktop

2005-10-06 14:25  i285  delphi  [permalink]

Let's say you just registered a new NameSpace object on the desktop, by entering it into the registry here:

HKEY_LOCAL_MACHINE
  SOFTWARE
    Microsoft
      Windows
        CurrentVersion
          Explorer
            Desktop
              NameSpace
                {MyGUID}

It doesn't show straight away. It does if you focus the desktop (minimize all, or click on the desktop somewhere), and hit F5. Or use this code to do just that programatically: (include the unit ShlObj in the uses clause, pidl is a variable of type PItemIDList)

  SHGetSpecialFolderLocation(GetDesktopWindow,CSIDL_DESKTOP,pidl);
  SHChangeNotify(SHCNE_UPDATEDIR,SHCNF_IDLIST,pidl,nil);

twitter reddit linkedin facebook