0

チェックボックスのチェック/チェック解除時に自動開始機能を制御するために、「/Library/LaunchAgents/」の plist ファイルをコピー/削除するアプリに問題があります。

「インストール後のアクション」に「ファイルを開く」アクションを持つインストーラーを作成しました。インストール後、アプリは正常に開始されますが、チェックボックスをオンにして管理者パスワードを入力してすべてのユーザーの「自動開始」を有効にすると、自動開始 .plist ファイルが /Library/LauchAgents/ にコピーされません。アプリを強制終了し、アプリを手動で再度開き、自動開始オプションを確認すると、ファイルをフォルダーに正常にコピーできます。

ファイルを "/Library/LauchAgents/" にコピーするために使用した AppleScript を次に示します。ソースパスと宛先パスが正しいと確信しています。

do shell script "cp '<sourcepath>' '<destinpath>'" with administrator privilege

コンソールに表示されるエラー メッセージは次のとおりです。

9/30/11 11:12:18.217 AM authorizationhost: SFBuiltinEntitled: Installer.app is not entitled for system.install.app-store-software

9/30/11 11:12:18.219 AM com.apple.SecurityServer: Failed to authorize right 'system.install.app-store-software' by client '/System/Library/PrivateFrameworks/PackageKit.framework/Versions/A/Resources/installd' [2042] for authorization created by '/System/Library/CoreServices/Installer.app' [2033]

9/30/11 11:12:18.277 AM installd: PackageKit: 
----- Begin install -----

9/30/11 11:12:19.977 AM MyAppDemo: awakeFromNib()

9/30/11 11:12:20.007 AM installd: Installed "My Application Package" ()

9/30/11 11:12:20.035 AM installd: PackageKit: 
----- End install -----
4

1 に答える 1

0

正しいコードは次のとおりです。

do shell script "cp '<sourcepath>' '<destinpath>'" with administrator privileges

権限の末尾に「s」が付いていることに注意してください。つづりが間違っているため、スクリプトを実行するとエラーが発生するはずです。

于 2011-10-16T04:43:02.490 に答える