Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Asynchronous SSL Client ExampleDemonstrates how to connect to an SSL server, send a simple message, receive a simple response, and disconnect. This example uses the asynchronous methods to connect, send, and receive.
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CHILKATSOCKETLib_TLB, OleCtrls; ... procedure TForm1.Button1Click(Sender: TObject); var socket: TChilkatSocket; success: Integer; ssl: Integer; maxWaitMillisec: Integer; sslServerHost: String; sslServerPort: Integer; begin socket := TChilkatSocket.Create(Self); success := socket.UnlockComponent('Anything for 30-day trial'); if (success <> 1) then begin ShowMessage('Failed to unlock component'); Exit; end; ssl := 1; maxWaitMillisec := 20000; // The SSL server hostname may be an IP address, a domain name, // or "localhost". You'll need to change this: sslServerHost := '123.123.88.88'; sslServerPort := 8123; // Connect to the SSL server asynchronously in a background thread. success := socket.AsyncConnectStart(sslServerHost,sslServerPort,ssl,maxWaitMillisec); if (success <> 1) then begin ShowMessage(socket.LastErrorText); Exit; end; // Wait for the socket to become connected... while (socket.AsyncConnectFinished <> 1) do begin // Sleep 1 second. socket.SleepMs(1000); end; // Did the connect fail? if (socket.AsyncConnectSuccess <> 1) then begin ShowMessage(socket.AsyncConnectLog); Exit; end; // Set maximum timeouts for reading an writing (in millisec) socket.MaxReadIdleMs := 20000; socket.MaxSendIdleMs := 20000; // Send a "Hello Server! -EOM-" message: success := socket.AsyncSendString('Hello Server! -EOM-'); if (success <> 1) then begin ShowMessage(socket.LastErrorText); Exit; end; // Wait for the send to finish while (socket.AsyncSendFinished <> 1) do begin // Sleep 1 second. socket.SleepMs(1000); end; // Did the send fail? if (socket.AsyncSendSuccess <> 1) then begin ShowMessage(socket.AsyncSendLog); Exit; end; // The server (in this example) is going to send a "Hello Client! -EOM-" // message. Begin reading asynchronously in a background thread: success := socket.AsyncReceiveUntilMatch('-EOM-'); if (success <> 1) then begin ShowMessage(socket.LastErrorText); Exit; end; // Wait for the background read to finish while (socket.AsyncReceiveFinished <> 1) do begin // Sleep 1 second. socket.SleepMs(1000); end; // Did the receive fail? if (socket.AsyncReceiveSuccess <> 1) then begin ShowMessage(socket.AsyncReceiveLog); Exit; end; // Display the received message: ShowMessage(socket.AsyncReceivedString); // Close the connection with the server // Wait a max of 20 seconds (20000 millsec) socket.Close(20000); end; |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2008 Chilkat Software, Inc. All Rights Reserved.