PowerBuilder
PowerBuilder
Example: Crypt2.GetSignedAttributes method
Demonstrates how to call the GetSignedAttributes method.Chilkat PowerBuilder Downloads
integer li_rc
integer li_Success
oleobject loo_Crypt
oleobject loo_BdPkcs7
oleobject loo_Json
oleobject loo_SbJson
integer i
integer li_TryNext
li_Success = 0
loo_Crypt = create oleobject
li_rc = loo_Crypt.ConnectToNewObject("Chilkat.Crypt2")
if li_rc < 0 then
destroy loo_Crypt
MessageBox("Error","Connecting to COM object failed")
return
end if
loo_BdPkcs7 = create oleobject
li_rc = loo_BdPkcs7.ConnectToNewObject("Chilkat.BinData")
li_Success = loo_BdPkcs7.LoadFile("qa_data/cades/CAdES-T/Signature-C-T-1.p7m")
if li_Success = 0 then
Write-Debug loo_BdPkcs7.LastErrorText
destroy loo_Crypt
destroy loo_BdPkcs7
return
end if
loo_Json = create oleobject
li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject")
loo_Json.EmitCompact = 0
loo_SbJson = create oleobject
li_rc = loo_SbJson.ConnectToNewObject("Chilkat.StringBuilder")
i = 0
li_TryNext = 1
do while li_TryNext
if loo_Crypt.GetSignedAttributes(i,loo_BdPkcs7,loo_SbJson) = 1 then
loo_Json.LoadSb(loo_SbJson)
Write-Debug string(i) + ": "
Write-Debug loo_Json.Emit()
else
li_TryNext = 0
end if
i = i + 1
loop
// Sample output:
// 0:
// {
// "signedAttributes": [
// {
// "oid": "1.2.840.113549.1.9.3",
// "name": "Content Type"
// },
// {
// "oid": "1.2.840.113549.1.9.5",
// "name": "Signing Time"
// },
// {
// "oid": "1.2.840.113549.1.9.4",
// "name": "Message Digest"
// },
// {
// "oid": "1.2.840.113549.1.9.16.2.47",
// "name": "Signing Certificate V2"
// }
// ]
// }
destroy loo_Crypt
destroy loo_BdPkcs7
destroy loo_Json
destroy loo_SbJson