Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
Encrypt XML SubtreeEncrypt an entire subtree within an XML document uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CHILKATXMLLib_TLB, OleCtrls; ... procedure TForm1.Button1Click(Sender: TObject); var xml: CHILKATXMLLib_TLB.IChilkatXml; xml: CHILKATXMLLib_TLB.IChilkatXml; xmlM: CHILKATXMLLib_TLB.IChilkatXml; xmlG: CHILKATXMLLib_TLB.IChilkatXml; success: Integer; begin xml := TChilkatXml.Create(Self).ControlInterface; // First, build a sample XML document: xml := TChilkatXml.Create(Self).ControlInterface; xml.Tag := 'stocks'; xmlM := xml.NewChild('Microsoft',''); xmlM.NewChild2('symbol','MSFT'); xmlM.NewChild2('recentPrice','34.50'); xmlG := xml.NewChild('Google',''); xmlG.NewChild2('symbol','GOOG'); xmlG.NewChild2('recentPrice','679.00'); // Display the unencrypted XML: Memo1.Lines.Add(xml.GetXml()); // This is the XML displayed: // <stocks> // <Microsoft> // <symbol>MSFT</symbol> // <recentPrice>34.50</recentPrice> // </Microsoft> // <Google> // <symbol>GOOG</symbol> // <recentPrice>679.00</recentPrice> // </Google> // </stocks> // The goal is to encrypt the "Microsoft" sub-tree. // The EncryptContent method encryptes the content // within a single XML node (not an entire sub-tree). // Therefore, to encrypt a sub-tree, you must first // compress it into a single node, and then encrypt it. xmlM.ZipTree(); // Now encrypt the content using 128-bit AES encryption: xmlM.EncryptContent('secretPassword'); // Display the XML with the encrypted sub-tree: Memo1.Lines.Add(xml.GetXml()); // This is displayed: // <stocks> // <Microsoft><![CDATA // [JkiMcoK3Mi198rT30KvicDEzu5WuJgMH+8KS0UZbcRE // 2CtdXplphV0iCdPMYnS01O6Ly6S4QCQSReMCshG/V3 // 8btJIZv/VLG9JZRsQk0bBafMhx7B2fQfm8YENke/JIM // ]]> </Microsoft> // <Google> // <symbol>GOOG</symbol> // <recentPrice>679.00</recentPrice> // </Google> // </stocks> // Now decrypt and unzip: xmlM.DecryptContent('secretPassword'); success := xmlM.UnzipTree(); if (success <> 1) then begin Memo1.Lines.Add('Failed to unzip tree'); end; // Display the restored document: Memo1.Lines.Add(xml.GetXml()); end; |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.