Получить заголовок окна с помощью AppleScript в Unicode

Я столкнулся со следующей проблемой: у меня есть скрипт, который извлекает заголовок из окна Firefox:

tell application "Firefox"
   if the (count of windows) is not 0 then
       set window_name to name of front window
   end if
end tell

Это работает хорошо, пока заголовок содержит только английские символы, но когда заголовок содержит некоторые символы, отличные от ASCII (кириллица в моем случае), он создает мусор utf-8. Я немного проанализировал этот мусор, и кажется, что мой кириллический символ преобразуется в Utf-8 без каких-либо проблем с кодовой страницей, т.е. вместо использования кириллической кодовой страницы для преобразования он вообще использует некодовые страницы, и у меня есть текст utf-8 с символами отличается от тех, что указаны в заголовке окна.

Мой вопрос: как я могу получить заголовок окна в utf-8 напрямую без какого-либо преобразования? Я могу достичь этой цели с помощью AXAPI, но я хочу добиться этого с помощью AppleScript, потому что для AXAPI необходимо включить какую-либо опцию в системе.

UPD: В редакторе AppleScript работает нормально. Но я компилирую его через код C++ через OSACompile->OSAExecute->OSADisplay Я не знаю сути редактора AppleScript так что, возможно, у него есть какая-то внутренняя информация о том, как кодировать символы


person ixSci    schedule 03.03.2011    source источник
comment
Не могли бы вы привести пример веб-адреса? Я только что попробовал ваш сценарий на каждом веб-сайте, который подошел для site:ru поиска в Google, и, похоже, он работал нормально для меня.   -  person Asmus    schedule 03.03.2011
comment
Вы выполняете его в редакторе AppleScript?   -  person ixSci    schedule 04.03.2011


Ответы (1)


Я нашел ответ, когда написал обновление. Иногда полезно задать вопрос для лучшего понимания :) Итак, для будущих искателей: если вы хотите использовать юникодный результат выполнения скрипта, вы должны указать typeUnicodeText для OSADisplay тогда вы получите результат в UTF-16LE в результате AEDesc

person ixSci    schedule 04.03.2011