4
我正在编写一个Mac(10.6/10.7)应用程序,它允许用户访问计算机之前对Active Directory域进行身份验证(我被告知可以不允许用户通过传统登录服务登录)。我有认证代码,并且正在尝试使此登录窗口成为全屏并且无法关闭。Mac Kiosk Mode API - 防止用户退出
Apple的Kiosk Mode API(documentation here)看起来非常适合这种情况,我用它将窗口全屏,禁用停靠/菜单栏/强制退出等,所有这些都可以正常工作。我遇到的问题是,我似乎无法阻止用户从简单的CMD +退出应用程序。
当用户可以退出时,有限制的Kiosk模式应用程序没有任何意义,所以我假设我错过了一些东西。下面是我在做什么的例子:
NSApplicationPresentationOptions options =
NSApplicationPresentationHideMenuBar|NSApplicationPresentationHideDock|
NSApplicationPresentationDisableHideApplication|
NSApplicationPresentationDisableProcessSwitching|
NSApplicationPresentationDisableAppleMenu| NSApplicationPresentationDisableForceQuit;
[NSApp setPresentationOptions:options];
[[_window contentView] enterFullScreenMode:[NSScreen mainScreen] withOptions:nil];
结果:全屏窗口,没有菜单栏,没有码头,无法强制退出,并不能CMD + Tab从屏幕上移开。 CMD + Q仍然退出应用程序。
https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/NSApplicationDelegate_Protocol/Reference/Reference.html#//apple_ref/doc/uid/TP40008592-CH1-SW4 – Eelke 2012-07-11 14:13:36
该诀窍!谢谢! – Blastfire 2012-07-12 13:09:23
@Blastfire的诀窍是什么? – Pavan 2014-02-07 01:54:46