Ошибка автоматизации Attachmate Reflection VBA

Использование отражений Attachmate Standard Suite 2011 R2 с использованием Excel для набора исходных данных. Терминал, который я пытаюсь автоматизировать, требует, чтобы ключ F9 отправлял информацию, но когда я пытаюсь отправить этот ключ, я получаю сообщение об ошибке "указанный ключ отсутствует в словаре". Все остальные ключи, которые я пытаюсь отправить в приложение терминала, работают нормально. Ниже приведен фрагмент кода:

sub TerminalTest()
Dim app As Attachmate_Reflection_Objects_Framework.ApplicationObject
Dim frame As Attachmate_Reflection_Objects.frame  

Set app = GetObject("Reflection Workspace")
Set frame = app.GetObject("Frame")
Set MGlobals.gScreen = frame.SelectedView.Control.Screen
With MGlobals.gScreen
    .SendKeys "A"
    .SendKeys "123"
    .SendKeys "456"
    .SendControlKey ControlKeyCode_Return
    .SendKeys "780ABC"
    .SendControlKey ControlKeyCode_Return
    .SendKeys "ZYX"
    .SendControlKey ControlKeyCode_Return
    .SendKeys "TEST"
    .SendControlKey ControlKeyCode_Return
    .SendControlKey ControlKeyCode_F9
End with
End sub

Я немного растерялся, потому что документация по API отражений показывает использование ControlKeyCode_F9 для функциональных клавиш, но код выдает ошибку.

Любая помощь оказывается.

1 ответ

Решение

Так что, похоже, очень мало информации об отражениях Attachemate даже через Google. Это подтверждается и отсутствием обратной связи, но я хотел бы обновить это на тот случай, если кто-нибудь в будущем испытает подобное разочарование.

Attachmate Reflections 2011 устанавливает 4 справочных файла:

Attachmate_Reflection_Objects
Attachmate_Reflection_Objects_Framework
Attachmate_Reflection_Objects_Emulation_OpenSystems
Attachmate_Reflection_Objects_Emulation_IbmHosts

Документация на их веб-сайте дает указание программистам включить все 4 ссылки в VBA для автоматизации. В этом и заключается проблема - похоже, существует конфликт с Attachmate_Reflection_Objects_Emulation_OpenSystems и Attachmate_Reflection_Objects_Emulation_IbmHosts. Когда оба включены, функциональные клавиши и другие встроенные функции Attachmate просто не будут работать. Я наткнулся на ошибку после того, как сильно ударился головой о клавиатуру, просматривая Object Browser и замечая явную разницу.

В любом случае, я понимаю, что есть немногие, кто, вероятно, все еще использует Attachmate, но для тех бедняжек, которые ввязались в это приложение своей корпорацией, возможно, это поможет

Спасибо,

Другие вопросы по тегам