Я дергаю себя за волосы, пытаясь сделать что-то, что кажется достаточно простым, но я как раз в конце.
Я действительно далеко не ушел:
Sub Test1()
Const TARGET_HOST = "192.168.0.2 -P 24" ' Some proprietary telnet port
Const PLINKPATH = "C:\program files\putty\plink.exe"
Set sh = CreateObject("WScript.Shell")
cmd = """C:\program files\putty\plink.exe"" -telnet " & TARGET_HOST
sh.Run cmd & " | clip", 1, True
End Sub
Итак, я хочу сделать следующее:
- Подключиться к некоторой машине, используя VBA в качестве TCP/ IP-клиент.
- Отправьте команду - произнесите "help" + vbcrlf
- Захватите ответ в буфер обмена или в файл, оба из которых я затем смогу просто вставить в лист
- Эта часть действительно смущает меня - и с .run, и с .exec я не могу понять, как отправить «помощь» + возврат каретки. Я могу открыть окно оболочки, но не могу заставить StdIn отправить команду plink.exe.
Заранее спасибо за любого доброго человека, который может помочь мне здесь. Если этот метод не является правильным методом для отправки команды в plink.exe, пожалуйста, предложите, какие другие методы можно использовать, не используя метод winsock, который очень трудно поддерживать, двигаясь вперед.