我正在尝试使用 LSSharedFileListInsertItemURL 以编程方式添加启动项(10.5 中的推荐方法)
调用请求,但不需要项目的图标。图标由 iconRef 提供。
iconRef 可以通过对图标文件使用 FSSpec 创建。我的理解是 FS Spec 在以后的 10.4 中被弃用。
有没有办法在 iconRef 中获取应用程序 .icns 而无需使用 FSSpec 或者我只需要使用 NULL?
我正在尝试使用 LSSharedFileListInsertItemURL 以编程方式添加启动项(10.5 中的推荐方法)
调用请求,但不需要项目的图标。图标由 iconRef 提供。
iconRef 可以通过对图标文件使用 FSSpec 创建。我的理解是 FS Spec 在以后的 10.4 中被弃用。
有没有办法在 iconRef 中获取应用程序 .icns 而无需使用 FSSpec 或者我只需要使用 NULL?
我的理解是 FS Spec 在以后的 10.4 中被弃用。
比那更长。
有没有办法在 iconRef 中获取应用程序 .icns 而无需使用 FSSpec 或者我只需要使用 NULL?
使用功能。_RegisterIconRefFromFSRef
通过NULL
将添加没有图标的项目;IIRC,当用户在系统偏好设置中查看他们的登录项目列表时,它将具有文档图标。
IconsCore.h 文件说要使用GetIconRefFromFileInfo
:
extern OSStatus
GetIconRefFromFileInfo(
const FSRef * inRef,
UniCharCount inFileNameLength,
const UniChar * inFileName, /* can be NULL */
FSCatalogInfoBitmap inWhichInfo,
const FSCatalogInfo * inCatalogInfo, /* can be NULL */
IconServicesUsageFlags inUsageFlags,
IconRef * outIconRef,
SInt16 * outLabel) /* can be NULL */
不推荐使用的功能的评论GetIconRefFromFile
说你应该使用它。你可以把你的CFURL
变成FSRef
using CFURLGetFSRef
。希望有帮助。