2012-06-11 5 views
1

로드 가능한 번들이 있습니다. 응용 프로그램이 아닙니다. Resource 디렉토리에 icns 파일을 저장하고 Info.plist에 CFBundleIconFile에 대한 올바른 항목이 있습니다. 내가 어떻게 알아? 테스트 응용 프로그램에서 동일한 기술과 differnt 아이콘을 사용했습니다. 나는 심지어 "lsregister"를 재건했다. 10.6.x 또는 10.7.x도 Finder에서 아이콘을 표시하지 않습니다.로드 가능한 번들의 아이콘

나는 정보 입수 아이콘으로 복사/붙여 넣기를 사용하여 Finder에서 아이콘을 변경했습니다. 그러면 Icon^M이라는 리소스 포크가있는 숨겨진 파일이 생성됩니다.

질문 : 1)로드 가능한 번들에 아이콘을 표시하는 방법이 있습니까? 2) 셸 프로그램이나 정보 입수 아이콘을 프로그래밍 방식으로 변경하는 방법이 있습니까?

답변

0

이 솔루션은 NSWorkspace 클래스의 -iconForFile 메서드에 있습니다. 필자는 필요로하는 이미지를 취하는 위의 명령 행 도구를 만들었고 위의 방법을 사용하여 아이콘을 설정했습니다.

[[NSWorkspace sharedWorkspace] setIcon:content forFile:targetFile options: NSExclude10_4ElementsIconCreationOption ]; 

여기서 content는 아이콘의 NSImage 내용이고 targetFile은 대상 번들의 경로입니다.

관련 문제