Advertisement
Guest User

Untitled

a guest
Nov 29th, 2014
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1. [.ShellClassInfo]
  2. LocalizedResourceName=My Folder Name
  3. InfoTip=A customized folder
  4.  
  5. procedure UpdateLocalizedResourceName(const ADirectory, ANewResourceName: UnicodeString);
  6. var
  7. Desktop: IShellFolder;
  8. Eaten: DWORD;
  9. DirIDList1, Child, NewChild: PItemIDList;
  10. Attr: DWORD;
  11. Folder: IShellFolder;
  12. begin
  13. OleCheck(SHGetDesktopFolder(Desktop));
  14. try
  15. Attr := 0;
  16. OleCheck(Desktop.ParseDisplayName(0, nil, PWideChar(ADirectory), Eaten, DirIDList1, Attr));
  17. try
  18. OleCheck(SHBindToParent(DirIDList1, IShellFolder, Pointer(Folder), Child));
  19. try
  20. OleCheck(Folder.SetNameOf(0, Child, PWideChar(ANewResourceName), SHGDN_INFOLDER, NewChild));
  21. CoTaskMemFree(NewChild);
  22. finally
  23. Folder := nil;
  24. end;
  25. finally
  26. CoTaskMemFree(DirIDList1);
  27. end;
  28. finally
  29. Desktop := nil;
  30. end;
  31. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement