Я перешел по URL-адресу в вашем вопросе, нажал кнопку « Raw» , скопировал код и вставил его в редактор сценариев , где я сохранил его как приложение под названием: « Собрать вне экрана Windows.app».
Затем я вошел в « Системные настройки» > « Безопасность и конфиденциальность» > « Доступность» , как показано на рисунке ниже, и добавил « Собрать вне экрана» Windows.app .
Я переместил некоторые окна за пределы экрана, затем запустил приложение Gather Off-Screen Windows.app , оно завершилось без ошибок и полностью переместило окна за пределы экрана на экран.
Теперь, когда я добавил « Записать вне экрана» Windows.app в « Системные настройки» > « Безопасность и конфиденциальность» > « Доступность» после его сохранения, если бы я этого не сделал, я ожидал увидеть следующие диалоговые окна при запуске приложения (которое иногда один или оба могут не появиться):
Тем не менее, позвольте мне сказать, что, хотя я не изучил скрипт глубоко, чтобы иметь полное представление о его механике, тем не менее, я вижу то, что я считаю плохим кодированием в этом случае в начале, и изменил бы следующую строку кода с :
repeat with proc in application processes
Для того, чтобы:
repeat with proc in (application processes whose visible is equal to true)
Причина, по которой это изменение имеет смысл для меня, заключается в том, что, например, на данный момент у меня 38 запущенных процессов приложений, из которых только 10 видны, и поэтому кажется бессмысленным дальнейшее выполнение запросов 28 процессов приложений, которые даже не видны.
Также обратите внимание, что я даже свернул некоторые из экранных окон перед запуском приложения, и когда я их минимизировал, они были полностью на экране. Таким образом, visible
свойство в этом случае относится к процессу, не свернутому за пределами экранных окон, которые, хотя свернутые, не видны.