2010-04-01 33 views
0

我有一個Mono應用程序不應顯示在擴展塢上,但偶爾會顯示一個窗口。我不想爲此應用程序顯示菜單欄和停靠欄圖標。我將應用程序封裝在應用程序包中,並且我的info.plist文件將LSUIElement設置爲「1」。這似乎並沒有從Dock中隱藏我的應用程序。如何隱藏OSX Dock上的Mono應用程序

我已經試過還呼籲osascript在一個的Process.Start以下信息: osascript -e「告訴應用程序‘系統事件’設置過程‘的myapp’的可見的假」

這將返回一個系統事件錯誤代碼:-10006。到目前爲止,我沒有找到什麼意思。

我也嘗試過所有的標準隱藏()和可見性=虛假的東西在單聲道。

任何人都找到了解決方法,或者有一個想法,我可以看看?大多數情況下,在Mono工作很簡單.net編碼,但這讓我很難過。

回答

1

那麼,經過大量的工作,我想出了一個更好的方法來做到這一點。我正在生成一個針對OSX的Silverlight +單聲道應用程序。我需要從同一按鈕按下才能啓動。

使用Silverlight OOB安裝過程創建的捆綁包中的bash腳本命令解決此問題,並使用一些rsync命令簡單分發創建的捆綁包。

會啓動(使用Mono的macpack工具創建)的服務器位線: 開放MyApp.app &

該行隨後推出Silverlight的OOB應用程序正常: ./Silverlight $ @ &>的/ dev/null

'$ @'位將所有初始參數傳遞到OOB應用程序中的Silverlight可執行文件。意味着你必須使用Info.plist來啓動自己的啓動器,所以你的'Silverlight'可執行文件不會被Silverlight更新覆蓋,但似乎工作得很好。

0

這是你在找什麼:http://uselessthingies.wordpress.com/2008/05/18/an-app-without-dock-icon-and-menu-bar/

TL;博士:你打包。應用程序,並在您的應用程序的Info.plist添加<key>LSUIElement</key><string>1</string>

+0

我曾嘗試過這兩種選擇,當時這些選項並不適合我。必須有一些關於LSUIElement我不明白或失蹤。在這一點上,更新可以解決我所看到的行爲。我使用的解決方案工作得很好,所以我沒有做更多的實驗。 – Chris 2012-02-28 18:37:23

相關問題