C# Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

C# Examples

Bounced Mail
Character Encoding
Digital Certificates
Digital Signatures
Email
FTP
HTML to XML
HTTP
IMAP
Encryption
MHT / HTML Email
MIME
RSA Encryption
S/MIME
Socket
Spider
Tar Archive
Upload
XML
XMP
Zip Compression


More Examples...
Email Object
POP3
SMTP
RSS
Atom
String
Byte Array
Self-Extractor

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

 

 

 

 

 

 

Debugging with Socket Session Logging

Debugging with socket session logging.

The Chilkat Socket component provides properties for keeping a session log making it possible to see the exact bytes received and sent on a TCP/IP or SSL connection. To enable session logging, set the KeepSessionLog property = true. The SessionLogEncoding property controls how binary, non-printable bytes are represented in the log. There are two possible settings: Possible values are "esc" and "hex". The default value is "esc".

When set to "hex", the bytes are encoded as a hexidecimalized string. The "esc" encoding is a C-string like encoding, and is more compact than hex if most of the data to be logged is text. Printable us-ascii chars are unmodified. Common "C" control chars are represented as "\r", "\n", "\t", etc. Non-printable and byte values greater than 0x80 are escaped using a backslash and hex encoding: \xHH. Certain printable chars are backslashed: SPACE, double-quote, single-quote, etc.

Download Chilkat .NET for 2.0 / 3.5 Framework

Download Chilkat .NET for 1.0 / 1.1 Framework

Chilkat.Socket socket = new Chilkat.Socket();

bool success;
success = socket.UnlockComponent("Anything for 30-day trial");
if (success != true) {
    MessageBox.Show("Failed to unlock component");
    return;
}

//  Enable session logging:
socket.KeepSessionLog = true;
socket.SessionLogEncoding = "esc";

//  To demonstrate session logging, we'll connect to an
//  HTTP server and download the HTTP response header:
bool ssl;
ssl = false;
int maxWaitMillisec;
maxWaitMillisec = 20000;
success = socket.Connect("www.chilkatsoft.com",80,ssl,maxWaitMillisec);
if (success != true) {
    MessageBox.Show(socket.LastErrorText);
    return;
}

//  Set maximum timeouts for reading an writing (in millisec)
socket.MaxReadIdleMs = 10000;
socket.MaxSendIdleMs = 10000;

//  The socket component includes a BuildHttpGetRequest
//  method for convenience. Build a GET and send it to
//  the web server:
string httpGet;
httpGet = socket.BuildHttpGetRequest("http://www.chilkatsoft.com/");

//  Send it...
success = socket.SendString(httpGet);
if (success != true) {
    MessageBox.Show(socket.LastErrorText);
    return;
}

//  Read the response up to the first double CRLF:
string httpHeader;
httpHeader = socket.ReceiveUntilMatch("\r\n\r\n");
if (httpHeader == null ) {
    MessageBox.Show(socket.LastErrorText);
    return;
}

//  Close the connection with the server
//  Wait a max of 20 seconds (20000 millsec)
socket.Close(20000);

//  Display the session log:
textBox1.Text += socket.SessionLog + "\r\n";

//  Show the HTTP response header:
textBox1.Text += httpHeader + "\r\n";

 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2008 Chilkat Software, Inc. All Rights Reserved.

Email Component · XML Parser