/// <summary> /// ritorna il numero di firme contenute nel documento /// </summary> /// <param name="signedFile"></param> /// <returns></returns> /// <remarks>supporta PAdES</remarks> public int GetSignatureCount(byte[] signedFile) { int nHandle = 0, nCountSignature = 0; //Controlla in primis se il documento รจ PADES. try { oDigest.PADES_OpenFromBuf(signedFile, out nHandle); if (nHandle != 0) { nCountSignature = oDigest.PADES_GetSignatureCount(nHandle); oDigest.PADES_Free(nHandle); } } catch { } finally { try { if (nHandle != 0) { oDigest.PADES_Free(nHandle); } } catch { } } // Controlla le firme CADES try { oDigest.P7kLoadFromBuf(signedFile, 1, out nHandle); if (nHandle != 0) { int nCount; oDigest.P7kGetSignatureCount(nHandle, out nCount); nCountSignature += nCount; } } catch { } finally { try { oDigest.P7kFree(nHandle); } catch { } } return(nCountSignature); }