Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi DLL) SSH Execute Remote CommandsSee more SSH ExamplesShows how to execute a command on an SSH server and retrieve the command output.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Ssh; ... procedure TForm1.Button1Click(Sender: TObject); var ssh: HCkSsh; port: Integer; success: Boolean; strOutput: PWideChar; begin // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. ssh := CkSsh_Create(); port := 22; success := CkSsh_Connect(ssh,'the-ssh-server.com',port); if (success <> True) then begin Memo1.Lines.Add(CkSsh__lastErrorText(ssh)); Exit; end; // Authenticate using login/password: success := CkSsh_AuthenticatePw(ssh,'theSshLogin','theSshPassword'); if (success <> True) then begin Memo1.Lines.Add(CkSsh__lastErrorText(ssh)); Exit; end; // Send some commands and get the output. strOutput := CkSsh__quickCommand(ssh,'df','ansi'); if (CkSsh_getLastMethodSuccess(ssh) <> True) then begin Memo1.Lines.Add(CkSsh__lastErrorText(ssh)); Exit; end; Memo1.Lines.Add('---- df ----'); Memo1.Lines.Add(strOutput); strOutput := CkSsh__quickCommand(ssh,'echo hello world','ansi'); if (CkSsh_getLastMethodSuccess(ssh) <> True) then begin Memo1.Lines.Add(CkSsh__lastErrorText(ssh)); Exit; end; Memo1.Lines.Add('---- echo hello world ----'); Memo1.Lines.Add(strOutput); strOutput := CkSsh__quickCommand(ssh,'date','ansi'); if (CkSsh_getLastMethodSuccess(ssh) <> True) then begin Memo1.Lines.Add(CkSsh__lastErrorText(ssh)); Exit; end; Memo1.Lines.Add('---- date ----'); Memo1.Lines.Add(strOutput); // -------------- // Sample output: // ---- df ---- // Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on // /dev/disk2 2176716032 265736304 1910467728 13% 33281036 238808466 12% / // devfs 382 382 0 100% 662 0 100% /dev // map -hosts 0 0 0 100% 0 0 100% /net // map auto_home 0 0 0 100% 0 0 100% /home // /dev/disk3s2 374668 374668 0 100% 93665 0 100% /Volumes/Google Chrome // // ---- echo hello world ---- // hello world // // ---- date ---- // Thu Dec 22 17:19:32 CST 2016 CkSsh_Dispose(ssh); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.