2013-11-29 2 views
0

У меня есть псевдоним реального приложения на моем рабочем столе.Изменить значок псевдонима на рабочем столе?

Теперь мне нужно изменить его значок во время выполнения. Я использую,

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

Но это изменение значок исходного файла в папке/Application. Вместо изменения псевдонима.

+0

Я не знаю, что вы можете изменить значок из псевдонима без изменения оригинала, можете ли вы сделать это в finder cmd i, щелкнуть изображение, вставить в что-то еще ... –

+1

Я могу изменить это в Lion и Mountain Lion, но не в Mavericks !!! –

+0

Настольные псевдонимы - это очень просто окна. Не запускайте их в коде. – uchuugaka

ответ

0

я получил ответ, вместо создания псевдонима создать жесткую ссылку на shortCutDestPath вашего приложения:

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

Для Обновить значок

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

Нет. Не создавайте жесткие ссылки на земле пользователя. Это абсолютно просит пользователей сломать мысли и создать проблемы с привилегиями. – uchuugaka

+1

@uchuugaka: Не могли бы вы подробно рассказать? –

+0

Если вы создаете жесткую ссылку, это тот же файл. Это означает, что если какой-либо пользователь удалил его с рабочего стола, удалите оригинал. – uchuugaka

Смежные вопросы