Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [.ShellClassInfo]
- LocalizedResourceName=My Folder Name
- InfoTip=A customized folder
- procedure UpdateLocalizedResourceName(const ADirectory, ANewResourceName: UnicodeString);
- var
- Desktop: IShellFolder;
- Eaten: DWORD;
- DirIDList1, Child, NewChild: PItemIDList;
- Attr: DWORD;
- Folder: IShellFolder;
- begin
- OleCheck(SHGetDesktopFolder(Desktop));
- try
- Attr := 0;
- OleCheck(Desktop.ParseDisplayName(0, nil, PWideChar(ADirectory), Eaten, DirIDList1, Attr));
- try
- OleCheck(SHBindToParent(DirIDList1, IShellFolder, Pointer(Folder), Child));
- try
- OleCheck(Folder.SetNameOf(0, Child, PWideChar(ANewResourceName), SHGDN_INFOLDER, NewChild));
- CoTaskMemFree(NewChild);
- finally
- Folder := nil;
- end;
- finally
- CoTaskMemFree(DirIDList1);
- end;
- finally
- Desktop := nil;
- end;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement