Sample code for 30+ languages & platforms
PowerBuilder

Compress Bytes

See more Compression Examples

Demonstrates how to compress binary data.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
long li_Success
oleobject loo_Fac
oleobject loo_Compress

li_Success = 0

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

loo_Fac = create oleobject
li_rc = loo_Fac.ConnectToNewObject("Chilkat.FileAccess")
if li_rc < 0 then
    destroy loo_Fac
    MessageBox("Error","Connecting to COM object failed")
    return
end if

loo_FileBytes = loo_Fac.ReadEntireFile("qa_data/bmp/big.bmp")
if loo_Fac.LastMethodSuccess <> 1 then
    Write-Debug loo_Fac.LastErrorText
    destroy loo_Fac
    return
end if

loo_Compress = create oleobject
li_rc = loo_Compress.ConnectToNewObject("Chilkat.Compression")

loo_Compress.Algorithm = "deflate"

loo_CompressedBytes = loo_Compress.CompressBytes(loo_FileBytes)
if loo_Compress.LastMethodSuccess <> 1 then
    Write-Debug loo_Compress.LastErrorText
    destroy loo_Fac
    destroy loo_Compress
    return
end if

li_Success = loo_Fac.WriteEntireFile("qa_output/compressedBmp.dat",loo_CompressedBytes)
if loo_Fac.LastMethodSuccess <> 1 then
    Write-Debug loo_Fac.LastErrorText
    destroy loo_Fac
    destroy loo_Compress
    return
end if



destroy loo_Fac
destroy loo_Compress