Apple の脅威の通知と金銭目当てのスパイウェアへの対策について

AppleScript でシステム環境設定からリーモートマネジメントをオフし、その後オンする操作を実行できますか

AppleScriptで、システム環境設定からリーモートマネジメントをオフし、その後オンするという操作を実行できますか?

リモート接続しているクライアントからリモートマネジメントを再起動したいためです。

他の方法があれば、他の方法でも構いません。

MacOS Sonoma 14.4.1です。

kickstartは試しましたがうまう行きませんでした。

* タイトルを変更しました。 Apple Inc.

投稿日 2024/04/13 01:09

返信
返信: 6

2024/04/27 12:07 el156 への返信

システム設定ではなく、システム環境設定ってことは古いOSになってしまいますけど、動作させたいのはSonoma上でしょうか?


他の質問で解決されたと見かけたのですが、こんな感じでもどうでしょう?

接続先上で実行する必要があると思いますが、こんなAppleScriptで。


if application "System Settings" is running then
	tell application "System Events"
		tell process "システム設定"
			tell application "System Settings" to activate
			if (exists sheet 1 of window 1) then
				key code 53
				delay 0.8
			end if
		end tell
	end tell
end if

tell application "System Settings"
	reveal anchor "Services_ARDService" of pane id "com.apple.Sharing-Settings.extension"
	activate
	repeat until (exists window "共有")
		delay 0.4
	end repeat
end tell

activate application "System Settings"
tell application "System Events"
	tell process "システム設定"
		tell window "共有"
			repeat until (exists sheet 1)
				delay 0.4
			end repeat
			tell group 1 of scroll area 1 of group 1 of sheet 1
				if ((get value of checkbox 1) as boolean) then
					click checkbox 1
					delay 2
					click checkbox 1
					delay 0.4
					beep
					delay 1
				else
					--click checkbox 1
				end if
			end tell
		end tell
	end tell
end tell

2024/05/08 06:44 vz.r への返信

ありがとうございます。参考になりました。


動作させたいのはSonoma上です。

私の場合、「共有」はSystem Settingsのメニューアイテムから探しましたが、

その先の、

area 1 of group 1 of group 2 of splitter group 1 of group 1

とか、

checkbox 1 of group 3

は、

UI Browserで探して番号で指定するしかありませんでした。



2024/05/08 09:18 el156 への返信

私のも一例です。

ちゃんと動作すればどんなコードでもいいですよね。私も、UI Browser頼りのところがあります。

GUIスクリプティングにするとき、態々調べて階層を辿っていかなくていいんで便利ですよね。


あと、下記のようなスクリプトを実行すると指定したpaneの選択したanchorを使ったスクリプトが得られます。

何かの役にでも立てば..

(システム設定の起動完了を待たずして先にコードが進行してしまうので、システム設定が立ち上がった状態で実行してください。また違うスクリプトですが、手動で開いた現在のpaneのすべてのanchorを取得して、リストから選択してスクリプトを作成することもできます。いろいろ試してみてください。)


tell application "System Settings"
	activate
	set pList to id of every pane
	set paneId to choose from list pList with title "paneのIDを選択"
	if paneId is false then return
	set anchor_ to (choose from list (get name of every anchor of pane id paneId) with title "anchorを選択")
	if anchor_ is false then return
	
	--reveal anchor (anchor_ as text) of pane id paneId
	
	set winName to get name of pane id paneId
	
end tell

set aCmd to "tell application \"System Settings\"
reveal anchor " & "\"" & (anchor_ as text) & "\"" & " of pane id " & "\"" & paneId & "\"
activate
repeat until (exists window \"" & winName & "\")
--delay 0.4
end repeat
end tell
"

--set the clipboard to aCmd


tell application "Script Editor"
	activate
	check syntax of (make new document with properties {text:aCmd})
end tell


2024/05/09 00:03 vz.r への返信

ありがとうございます。参考にさせていただきます。


ところで、UI Browserはライセンス提供が終わってしまっていて入手できないと思い諦めていたのですが、

今回必要に迫られて、試しにSnowLeopardかそれ以前の頃に購入した古いライセンスを

最新版(最終版)のUI Browserに入れてみたら、Sonomaで問題なく動作してくれて助かりました。

他に選択肢が無いので。


2024/05/09 16:16 el156 への返信

ライセンス通りましたか。それは良かったです。

現状のUI Browser 3.0.2はこちらから。

ライセンスがない場合は、トライアルモードで30日間実行されるようですね。その後制限モードになる?


後継のバージョン4はオープンソースプロジェクトで進行されているよう?です。

Late Night SoftwareのUI BROWSER 4のページ。


バージョン4楽しみですね。

AppleScript でシステム環境設定からリーモートマネジメントをオフし、その後オンする操作を実行できますか

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple ID を使ってご参加ください。