lpDllMsgStruct is a pointer to a tagDLLMSGSTRUCT that contains the following information.
-
lpDllMsgStruct->nDllMsgStructSize: The size of the structure can be used to compare the size of your custom DLL's defined structure with the size of a defined structure being passed by OCR for AnyDoc. This will serve to protect the custom verification DLL from having a version mismatch with OCR for AnyDoc.
-
lpDllMsgStruct->pszFamilyName: pszFamilyName is a pointer to a null terminated string that contains the name of the Form Family being processed.
-
lpDllMsgStruct->pszBatchName: pszBatchName is a pointer to a null terminated string that contains the batch number being processed.
-
lpDllMsgStruct->pszTemplateName: pszTemplateName is a pointer to a null terminated string that contains the master form template name being processed.
-
lpDllMsgStruct->pszImageFileName: pszImageFileName is a pointer to a null terminated string that contains the fully qualified path and filename of the current image.
-
lpDllMsgStruct->pszImportFileName: pszImportFileName is a pointer to a null terminated string that contains the fully qualified original import path and file name of the image.
-
lpDllMsgStruct->nSequence: nSequence contains the batch sequence number of the current image.
-
lpDllMsgStruct->nTotalImages: nTotalImages contains the total number of images in this batch.
-
lpDllMsgStruct->nTotalZones: nTotalZones contains the total number of zones for the current Master Form Template.
-
lpDllMsgStruct->nTotalLines: nTotalLines contains the total number of lines in the current zone.
-
lpDllMsgStruct->pszZoneName: pszZoneName is a pointer to a null terminated string that contains the name of the current zone being passed to the DLL.
-
lpDllMsgStruct->nZoneNumber: nZoneNumber contains the number of the current zone being passed to the DLL.
-
lpDllMsgStruct->nLineNumber: nLineNumber contains the number of the current line of the current zone being passed to the DLL.
-
lpDllMsgStruct->rLineRect: The rLineRect structure defines the coordinates of the upper-left and lower-right corners of the rectangle on the image that contains the current line being passed to the custom DLL.
-
leftSpecifies the x-coordinate of the upper-left corner of the rectangle.
topSpecifies the y-coordinate of the upper-left corner of the rectangle.
rightSpecifies the x-coordinate of the lower-right corner of the rectangle.
bottomSpecifies the y-coordinate of the lower-right corner of the rectangle.
-
-
lpDllMsgStruct->pQuesChars: pQuesChars is a pointer to an array of bytes that either have a 0 or a 1. A zero (0) has a value of not questionable and one (1) has a value of questionable. This array has a length of the current value of lpDllMsgStruct->pszText and each value corresponds to the character at the same index within that member variable.
-
lpDllMsgStruct->prCharRects: prCharRects is a pointer to an array of RECT structures that define the coordinates of the upper-left and lower-right corners of the rectangle of the indexed questionable character on the image. The image will contain the current line being passed to the custom DLL. This can be accessed as follows:
-
LPRECT lpRect;
lpRect = (LPRECT)lpDllRuleStruct->prCharRects+(nIndex*(sizeof(RECT)));
-
-
lpDllMsgStruct->nNumQuesChars: nNumQuesChars contains the total number of questionable characters in the current line being passed to the custom DLL.
-
lpDllMsgStruct->pszText: On entry, pszText contains a pointer to a null terminated string that contains the value of the current line of the current zone being passed to the DLL.
This value can be modified by the custom DLL if desired (for example, after displaying a dialog box). If it is modified, OCR for AnyDoc will remove additional questionable information from the line.
-
lpDllMsgStruct->nDllMessage: The verification DLL can use the variable to store information for later calls to DLLVfyLinePhase(), DLLMsgLinePhase(), or DLLRuleLinePhase().
For example, this number could be used to store what type of violation occurred or, if you are using resource strings, to set the number of the string to be displayed when DLLMsgLinePhase() is called. Remember that OCR for AnyDoc does nothing with this value other than store it.
-
lpDllMsgStruct->pszMessage: On return it should contain a string to be displayed to the user on the black line in the Verifier. Copy the new string to the current pointer. Do not change the pointer to point to a new address.
On entry this is a pointer to a null terminated string.