在桌面上更改别名的图标?

时间:2013-11-29 10:44:42

标签: objective-c macos nsworkspace

我的桌面上有一个实际应用程序的别名。

现在我必须在运行时更改其图标。 我正在使用,

[[NSWorkspace sharedWorkspace] 
setIcon:imgAppIcon forFile: shortCutDestPath options:0];

但是/ Application文件夹中原始文件的这个更改图标。而不是别名改变。

1 个答案:

答案 0 :(得分:0)

我得到了答案,而不是创建别名,在应用程序的shortCutDestPath中创建一个硬链接:

 [[NSFileManager defaultManager] linkItemAtPath:<application path>
                                                toPath:shortCutDestPath
                                                 error:&error];

更新图标

BOOL result = [[NSWorkspace sharedWorkspace] setIcon:imageIcon
                                       forFile: shortCutDestPath
                                       options:NSExclude10_4ElementsIconCreationOption];