Как сохранить переменную, назначенную другой переменной?
У меня есть этот код для выполнения команды, и после перехода к определенной строке на экране в эмуляторе хоста PCOM 3270 с VBScript я хочу получить позицию текущей строки, поэтому я вызываю:
'Save the current Line
LigneEnCours= autECLSession.autECLPS.CursorPosRow
Предположим, что курсор теперь находится в строке 7, поэтому LigneEnCours = 7
После этого я выполняю этот код:
'Execute a command called 'My Command' that I put in line 24 column 12
autECLSession.autECLPS.SetText <My Command>, 24, 12
autECLSession.autECLOIA.WaitForInputReady
autECLSession.autECLPS.SendKeys "[enter]"
Когда я звоню autECLSession.autECLPS.SetText 'My Command', 24, 12
курсор перемещается в строку 24 и столбец 12. Итак, autECLSession.autECLPS.CursorPosRow
возвращается 24.
После этого я называю это:
'Puting the cursor in the saved current line
autECLSession.autECLOIA.WaitForInputReady 60
autECLSession.autECLPS.SetCursorPos LigneEnCours, 2
В этот момент LigneEnCours содержит 24, а не 7, как я ожидал.
Почему и как это решить, пожалуйста?
1 ответ
Не знаю об остальном, но если это обычный VBScript и ваш autECLSession.autECLPS
является эквивалентом WScript.CreateObject("WScript.Shell")
ваша строка sendkeys должна быть
autECLSession.autECLPS.SendKeys "{ENTER}"
РЕДАКТИРОВАТЬ: после вашего собственного редактирования: кажется, что ваш LigneEnCours содержит объект, а не значение, попробуйте предложение Regis или что-то вроде LigneEnCours = autECLSession.autECLPS.CursorPosRow * 1
или же LigneEnCours = "" & autECLSession.autECLPS.CursorPosRow
в зависимости от того, что не дает ошибку