2010-07-25 49 views

回答

8

首先,使用CGWindowListCreateDescriptionFromArray()来获取拥有进程的PID(kCGWindowOwnerPID)。如果这是10.6,则可以使用+[NSRunningApplication runningApplicationWithProcessIdentifier:]来获取应用程序对象,然后使用-icon

10.6之前,你需要使用GetProcessForPID()切换到PSN,使用GetProcessBundleLocation()拿到包的位置,切换到FSRef路径字符串,然后用-[NSWorkspace iconForFile:]获得的图标。

+0

很好的相关详细。谢谢! – 2010-07-25 18:12:14

0

Rob Napier的回答是正确的。

在最新的API,并在迅速语言,它应该是这样的:

let runningApp = NSRunningApplication(processIdentifier: pid_t(the_process_id)) 
let icon = runningApp?.icon