0
我以書面形式在Mac(10.6/10.7)的應用程序,允許他們進入計算機之前對其進行驗證針對Active Directory的域用戶的過程是(有人告訴我,我可以不允許用戶通過傳統登錄服務登錄)。我有認證代碼,並且正在嘗試使此登錄窗口成爲全屏並且無法關閉。的Mac Kiosk模式API - 強制退出應用程序崩潰
Apple的Kiosk Mode API(文檔在這裏)似乎非常適合這個,我用它來使窗口全屏,停用dock/menu bar /強制退出等,其中大部分工作正常。但是,我發現當我將窗口的視圖設置爲全屏模式時,嘗試啓動強制退出窗口會使應用程序(無論是桌面還是全屏,並需要完全重新啓動)崩潰。
代碼示例:
NSApplicationPresentationOptions options =
NSApplicationPresentationHideMenuBar|NSApplicationPresentationHideDock|
NSApplicationPresentationDisableHideApplication|
NSApplicationPresentationDisableProcessSwitching|
NSApplicationPresentationDisableAppleMenu|
NSApplicationPresentationDisableForceQuit;
[NSApp setPresentationOptions:options];
[[_window contentView] enterFullScreenMode:[NSScreen mainScreen] withOptions:nil];
我能想到的唯一的事情是,期權的NSApplication並非完全被切換到全屏時保留;除禁用強制退出以外的每個選項似乎都會結束。任何建議感激!
我想這是有道理的,但它是我的理解是,Kiosk模式API是專門設計,以防止用戶能夠終止應用程序。 – Blastfire 2012-07-12 14:29:31
這是,但我相信你必須以特殊的權限運行。否則,任何應用程序可能會阻止用戶,直到他輸入了他的信用卡號碼或其他東西。嘗試以「root」身份運行應用程序 - 是否可以工作? – 2012-07-12 15:52:49
Nah,沒有工作。我想我將退出使用NSView的enterFullScreenMode並改爲使用屏蔽屏幕,並使用NSApp選項禁用強制退出。謝謝,不過。 – Blastfire 2012-07-12 17:55:48