79得票16回答
如何在OS X或iOS中运行时确定操作系统版本(不使用Gestalt)?

从OS X 10.8 Mountain Lion开始,位于CarbonCore/OSUtils.h中的Gestalt()函数已被弃用。 我经常使用这个函数来测试运行时的OS X操作系统版本(请参见下面的示例)。 在Cocoa应用程序中,还可以使用哪些其他API来检查OS X操作系统版本?...

68得票5回答
所有用户和组的列表

我正在尝试获取 Mac OS X 10.5+ 上的 所有 用户和组列表。我该怎么做? 例如,我的计算机上所有用户的列表应该返回:_amavisd、_appowner、_appserver、_ard、_atsserver、_calendar、_carddav、_clamav、_coreaudi...

30得票3回答
通过OSX辅助功能API获取窗口编号

我正在开发一个应用程序,可以移动屏幕上第三方应用程序的窗口。 为了获取所有当前打开的窗口的概述,我使用CGWindowListCopyWindowInfo(kCGWindowListOptionOnScreenOnly | kCGWindowListExcludeDesktopElement...

26得票6回答
Mac OS X游戏如何接收低级别的键盘输入事件?

游戏需要对键盘输入进行低级别访问。在Windows上,有DirectInput。但是Mac OS X游戏开发人员使用什么技术呢? 显然,有足够多的Mac游戏可以完美地获取键盘输入,而不会出现常见解决方案的缺点: 解决方案#1:使用keyUp / keyDown事件-(void)keyUp:...

26得票5回答
从进程id获取应用程序的真实路径?

如何从进程 ID 获取应用程序名称和应用程序的实际路径? 我正在使用 Mac OS X。

24得票1回答
使用gcc链接苹果框架

我创建了一些封装CoreAudio的包装函数,目标是创建一个C库,以便在一些命令行C++工具中使用。到目前为止,一切进展顺利。我取了一个示例项目,修改了它,并在XCode中构建和运行了它。我想跳过XCode,使用gcc和Makefile构建库。 我如何链接到苹果框架?框架只是共享库吗?我可以...

23得票9回答
如何检测OS X应用程序是否已经启动

在 macOS 上,一个应用程序包通常只能启动一次。但是,通过简单地复制该应用程序包,就可以启动同一个应用程序两次。那么,检测和阻止这种可能性的最佳策略是什么? 在 Windows 上,可以通过应用程序在启动时创建命名资源,并在无法创建命名资源时退出,以实现此效果,表示已经有另一个进程正在运...

23得票5回答
无法启动Carbon - 12.04 - Python错误 - ImportError: 无法导入名称daemonize

我真的希望有人能帮助我,因为我已经花费了至少15个小时来解决这个问题。一个潜在雇主给我分配了一个任务,我的解决方案是使用graphite/carbon/collectd。 我正在尝试运行和安装carbon/graphite 0.9.12,但是我根本无法启动carbon。每次我尝试启动carbo...

20得票7回答
制作 .webloc 文件

我正在编写一个程序(针对Mac OS X,使用Objective-C),需要以编程方式创建一堆.webloc文件。 .webloc文件只是在您从Safari的地址栏拖放URL到某个文件夹后创建的文件。 通常情况下,我需要一种方法来在文件系统中创建指向Web上某个位置的项目。据我所知,在Ma...

18得票3回答
Mac事件监听仅延迟丢弃的事件。

我正在尝试编写一些代码,在Mac OSX 10.6上启用时可以丢弃所有的键盘和鼠标事件。我的代码以root用户身份运行。我采取的方法是创建一个事件捕获器,当启用时,它会丢弃传递给它的所有事件。事件捕获器回调函数如下:CGEventRef MyTapCallback(CGEventTapProx...