AppleScript показывает «Не удалось открыть документ. У вас нет разрешения». Но файл можно открыть?

AppleScript показывает «Не удалось открыть документ. У вас нет разрешения». Но файл можно открыть?

Я получаю сообщение "Не удалось открыть документ [имя файла]. У вас нет разрешения" при попытке доступа к нескольким файлам в AppleScript. Однако я могу открыть эти файлы вручную без проблем.

Я попытался сделать следующее:

  • Разрешение изменено вручную черезFile->Get Info
  • Использовал Disk Utility для «Проверки» и «Восстановления прав доступа»
  • Перезагрузился в режиме восстановления, чтобы сбросить разрешения домашнего каталога и списки контроля доступа.

Проблема сохраняется.

Чтобы добавить еще больше разочарования, файлы не всегда сообщают об ошибке. Иногда я получаю ошибку в файле при запуске скрипта, но не в следующий раз!

Почему я могу получить эту ошибку разрешений и как еще ее можно устранить?

Если поможет, вот AppleScript ниже:

-- prompt for source directory
set srcDirectory to (choose folder)

-- get list of all files in source directory
set allFiles to (list folder srcDirectory without invisibles)

tell application "OmniGraffle"
    -- create a new document
    set newDocument to (make new document with properties {template:"Single Pixel Grid"})

    -- added for debug purposes
    delay 5

    -- get a reference to the first layer
    set destinationLayer to first layer in first canvas of newDocument

    -- step through each of the file
    repeat with currentFile in allFiles
        -- get a reference to the next file
        set srcFileString to (srcDirectory as string) & currentFile
        set srcFileRef to (open srcFileString)

        -- get a reference to the icon
        set srcGraphic to first graphic in first layer in first canvas of srcFileRef

        -- flip the icon (they're all upside down)
        flip srcGraphic over vertically

        -- copy the updated source to destination canvas
        duplicate srcGraphic to destinationLayer

        -- close the source file
        close srcFileRef saving no

        -- added for debug purposes
        delay 5
    end repeat

end tell

Связанный контент