Тема: AHK: прописные и строчные буквы
Всем доброго дня.
Вопрос, возможно, не совсем про AutoHotkey, но я не понимаю, у кого ещё спрашивать.
Ситуация в следующем. Есть скрипт, который отправляет длинную последовательность нажатий клавиш для проведения серии процедур Find&Replace в одном веб-приложении (по сути, проделывается транслитерация). Символы для замены посылаются в виде кодов Unicode с помощью функции:
EncodeInteger(ref, val)
{
DllCall("ntdll\RtlFillMemoryUlong", "Uint", ref, "Uint", 4, "Uint", val)
}
SendUnicodeChar(charCode)
{
VarSetCapacity(ki, 28 * 2, 0)
EncodeInteger(&ki + 0, 1)
EncodeInteger(&ki + 6, charCode)
EncodeInteger(&ki + 8, 4)
EncodeInteger(&ki +28, 1)
EncodeInteger(&ki +34, charCode)
EncodeInteger(&ki +36, 4|2)
DllCall("SendInput", "UInt", 2, "UInt", &ki, "Int", 28)
}
Сначала отправляются инструкции по замене строчных букв, потом — прописных.
Есть два компьютера, на которых выполняется скрипт. На первом всё происходит правильно — строчные буквы заменяются строчными, прописные — прописными. На втором же поиск строчных букв распространяется и на прописные, в результате чего все буквы становятся строчными.
Вопрос: в какую сторону тут копать? ОС одна и та же, версии браузера на машинах разные (FF 3.5 и 3.6.1), версии AutoHotkey — неизвестны (кстати, где их смотреть?).
Спасибо.