Файл POSIX работает в редакторе Applescript, а не в XCode

Попробуй это:

  1. Создайте новый проект XCode4 Applescript. В делегате вставьте этот код:

    on doIt_(sender)
        set goodHFSLoc to (path to desktop folder)
        set test1 to (POSIX path of goodHFSLoc)
        log "test1:"&test1
        set theJSPath to "/Users/dave/Desktop/MakeTSLabels.js"
        set jsHFSFile to (POSIX file theJSPath)
        set test2 to (POSIX path of jsHFSFile)
    end doIt_
    
  2. Подключите этот метод к кнопке в окне пользовательского интерфейса.

  3. Запустить программу
  4. Нажмите кнопку, и вы должны получить эту ошибку:

    Can’t get POSIX path of class "NSObject".
    
  5. Поместите тот же код (за исключением строк «on» и «end») в редактор AppleScript, и он будет работать нормально.

По-видимому, «файл POSIX» в ApplescriptObjC не создает файловый объект как спецификацию языка требуется. Вместо этого он создает NSObject.

Мне нужно иметь спецификатор файла applescript для предоставления команде do javascript Adobe Illustrator, и мне нужно использовать функции NSBundle для получения файла javascript, который упакован в пакет моего приложения.

Я делаю что-то неправильно?


person Dave Hirsch    schedule 11.02.2012    source источник


Ответы (1)


Вы увидите такое же поведение в операторе Tell Finder или System Events. Решение такое же для ASObjC — нужно использовать его как приведение:

set jsHFSFile to (theJSPath as POSIX file)
person Community    schedule 11.02.2012