2012-01-04 10 views
2

XCodeには、パッケージャのアンインストールオプションは含まれていません。一般的に、ユーザーはアプリをアンインストールする場合は単にゴミ箱にドラッグします。ほとんどのアプリはアプリパッケージに含まれています。OS Xカーネル拡張グラフィカルアンインストーラ

しかし、いくつかの簡単なコマンドラインを使用してアンインストールする必要があるカーネル拡張があります。スクリプトは動作しますが、グラフィカルなアンインストーラを提供する必要があります。

プログレスバーを表示しながらスクリプトを実行する方法を提供するプラグアンドプレイのサンプルコードがあるとは思っていませんが、誰かがこれに対処してくれたり、これをすばやく簡単に達成する方法

このスクリプトはフィードバックなしで2行しかないので、root権限を安全に要求して使用することができる限り、アプリでコマンドを実行できます(OS Xがパーミッション - 我々はOS Xにアプリケーションを提供するよう要求するだけで、パッケージインストーラでのやり方と同じようにユーザに問い合わせる必要があります)。ここでシェルスクリプトを実行するために、XcodeでCocoaの-のAppleScriptプロジェクトを使用して合理的に良い方法はあります

答えて

1

http://www.mactech.com/articles/mactech/Vol.22/22.08/GUI-upyourScript/index.html

それが正しいroot権限を、プログレスバーを使用してエラーを処理し、取得カバーシェルスクリプトを実行します。

残念ながら、それはここにカット&ペーストして少し長いですが、一般的な手順は以下のとおりです。

  1. はそれを追加し、意図したシェルスクリプトを作成し、テストタイプココア-のAppleScriptアプリ
  2. の新しいXcodeプロジェクトを作成します。あなたのプロジェクトに
  3. MainMenu.nibを編集して、ボタン(theObject)とプログレスバー(pMainProgress)を追加し、タイトルとUiのその他の要素を編集します。
  4. ボタンをプロジェクトのリンスクリプト(チェッカーを選択したボタンのインスペクタactionボックスをk及びmyprojectname.applescriptに入れる)
  5. 編集以下に似て何かをするAppleScript:
 
on clicked theObject 
    -- setup 
    set myPath to POSIX path of (path to me) as string 
    -- Start progress bar 
    set uses threaded animation of progress indicator "pMainProgress" of window "wMain" to true 
    tell progress indicator "pMainProgress" of window "wMain" to start 

    -- Do it! 
    try 
     do shell script quoted form of myPath & "Contents/Resources/backup.sh" with administrator privileges 
    on error number 255 
     display dialog "Sorry, an error occurred. I can't make the copy." 
    end try 
    -- Stop progress bar 
    tell progress indicator "pMainProgress" of window "wMain" to stop 
    set uses threaded animation of progress indicator "pMainProgress" of window "wMain" to false 

end clicked 

あなたは、さらにインスタンスのアプリ(名前をカスタマイズ)とウィンドウにテキストボックスを追加することができます複数のスクリプトを実行している場合にどのようなステップが発生しているかをユーザーに警告することができます(スクリプトにを入力してください)。

関連する問題