Hello All,

I have posted this in Acrobat 9.0 forum, but am re posting it here as it is a developer related queries.

I have a problem which is occurring only when I use my plug-in Acrobat 9.0.

I am working on a Digital Signature Plug –In and in the handler “DSNewSigData” I have the following code snippet right at the start, which ensures that a user saves any changes made to a PDF file before starting with Signature creation.
// See if document has been modified and warrants saving
ASInt32 nFlags = PDDocGetFlags(pdDoc);
if(nFlags & PDDocNeedsSave)
{
MessageBox(NULL, szNeedToSaveBeforeSigning, szDigitalSignature,
MB_OK | MB_ICONEXCLAMATION);

return bRet;
}

While testing this plug-in with Acrobat 9.0, I observed that the message box gets displayed even when the PDF being signed has not been modified at all. The same operation is working fine with Acrobat 7.0 and Acrobat 8.1.3.

I observed that in case of Acrobat 7.0 and 8.1.3 the value of nFlags is 1152 and the result of (nFlags & PDDocNeedsSave) is false. In case of Acrobat 9.0 value of nFlags is 1157 and the result of (nFlags & PDDocNeedsSave) is true.

As per my understanding there seems to be some change in the way Acrobat 9.0 handles the Digital Signature. Maybe some API call is setting the document dirty flag before the DSNewSigData call back is invoked.

Is there a way to identify if the change in the PDDoc object was a result of the annotation being created to mark the signature?

Any help or pointers will be highly appreciated.

Thanks in advance!

regards,
Girish