Slow processing and getting opening errors/warnings

I've modified the PDF Binder sample to get a plugin that would open PDF's and Tif files, and save them as PDF/A-1b (code below).
It's working. The problem: it's processing too slow (compared with the Actions batch processing)... and I've been getting warnings/and errors about "The imput file is corrupt or of an unknown/unsupported type" type. This is stopping my batch process until I click OK, and the it continues.
I am trying to process a few thousand of tif files now. I tried first to use the Batch processing capability built in the Acrobat X... an it works, but only with the first 255 documents in the folder... then gives an "insufficient disk space" message for the rest of the files in the directory.
So, 2 questions: Does anyone knows why it is so slow processing the tiff files and... how I can make my code "silent" so it does not wait for the OK after the message??
Thanks in advance.
The code:
ADOBE SYSTEMS INCORPORATED
Copyright (C) 1998-2006 Adobe Systems Incorporated
All rights reserved.
NOTICE: Adobe permits you to use, modify, and distribute this file
in accordance with the terms of the Adobe license agreement
accompanying it. If you have received this file from a source other
than Adobe, then your use, modification, or distribution of it
requires the prior written permission of Adobe.
  \file PDFBinder.cpp
- Implements a method to convert multiple files into PDFs and bind the PDFs
into one PDF file. The code shows how to use AVConversionToPDFHandler to
convert files to PDF and how to use PDDocInsertPages() to combind PDF files.
// Headers.
#include <stdio.h>
#include <ctype.h>
#ifndef MAC_PLATFORM
#include <direct.h>
#include "PIHeaders.h"
#endif
// Defines ----------
// Define this flag to show AVConversionToPDFEnumHandler info. in log file.
#define SHOW_TOPDF_HANDLER_TYPES   
// define this flag to use file type filter 
#define USE_FILE_FILTER   
    Constants/Declarations
// Message display control.  Ture: display
ASBool bEcho = true;
// File location. User can change the following filenames.
#if WIN_PLATFORM
    const char* STRING_PDFBinderFolder = "C:\\Fairfax\\Adobe\\in";
    const char* STRING_PDFOutputFolder = "C:\\Fairfax\\Adobe\\PDFA";
    const char* FOLDERSYMBOL="\\";
#endif
#if MAC_PLATFORM
    const char* STRING_PDFBinderFolder = "/PDFBinder";
    const char* FOLDERSYMBOL="/";
#endif
char* OutputPdfFileName = "PDFBinderOutput.pdf";
char* LogFileName = "PDFProcessLog.txt";
static ASInt32 gNumToPDFExt;
static ASInt32 gNumFromPDFExt;
static AVConversionFromPDFHandler RightHandler;
const int MAX_FILENAME_LENGTH = 256;
char sLogFileName[MAX_FILENAME_LENGTH];
// Filter -----------
// Filter is a list of file types which can be converted to PDF in this program.
// Use a filter may fit user's specific needs and ensure a smooth automation process.
// Of course, the user can turn off the filter in two ways:
//   (1) gPDFBinderFileFilter = "";
//   (2) comment out //USE_FILE_FILTER 
// The filter should be consistent with the Acrobat viewer's menu capability:
//   Create PDF from multiple files ...
// Here we put the types which have been tested, but user can expand it.
const char* gPDFBinderFileFilter = "pdf,tif,tiff,PDF,TIF,TIFF";
const int MAX_STRING_LENGTH = 2048;
AVConversionToPDFHandler gHandler;
// functions in this file.
int    ConvertAndInsertFileToPDF(ASPathName aspItem, char* aFileName, PDDoc  PDFfile);
void BindingFileToPDF(ASPathName aPathName, char* aFilename, ASFileSysItemPropsRec nFileAttrb, PDDoc targetPDdDoc, ASPathName outputPathName, int *ipTotal, int *ipConverted);
ASBool PassPDFBinderFileFilter(char* filename);
int    ConvertAndSavePDFInTargetFolder(ASPathName aPathName, char* aFileName, PDDoc PDFfile, ASPathName outputPathName);
char* NewFileName(char *& aFileName);
// callbacks
ACCB1 ASBool ACCB2 MyAVConversionToPDFEnumProc(AVConversionToPDFHandler handler, AVConversionEnumProcData data);
ACCB1 ASBool ACCB2 AVConversionToPDFEnumFindHandler(AVConversionToPDFHandler handler, AVConversionEnumProcData data);
static ACCB1 ASBool ACCB2 myAVConversionFromPDFEnumProc(AVConversionFromPDFHandler handler, AVConversionEnumProcData data);
    Implementation
/**    This sample implements a method to convert multiple files into PDF
  and bind the PDFs into one PDF file .
    This sample shows developers how to grammatically implement To-PDF file
  converson functionality.  Basically, the code uses AVConversionToPDFHandler
  to convert files to PDF and PDDocInsertPages()to combine PDF files.
  This plug-in is designed to run from a menu item, and by setting bEcho = false
  it may be run without any graphics user interface on the screen. Therefore, it 
  can be executed from other programs such as C IAC, VB IAC, and JavaScript
  to meet enterprise workflow needs.
    How to run it :
    - This sample adds a menu item "PDF Binder" under the Acrobat SDK submenu. Two ways to
    execute it: 1) click the menu item to run the program using a fixed file location
    hard coded; 2) press the shift key and click the menu item to choose a folder where
    files to be converted are located.
    - Without folder selection, this original code is to convert and bind files in a
    directory    C\test\PDFBinder for Win, or a folder   MacHD:test:PDFBinder for Mac.
    You can copy the test files in the project's testfiles folder to the appropriate location 
    for testing. You may locate files to be converted in another directory/folder, and
    specify the location in the string variable PDFBinderFolder in the code.
    - When you have the files to be converted ready in the specified location,
    run Acrobat 6 menu Advanced->AcrobatSDK->PDF Binder to start the operation.  There are
    echo messages informing you of the operation start and end, but you can change and
    rebuild the code to turn off the display on screen.
    - An output file PDFBinderOutput.pdf in the same location is created
    when the program succeeds. A text log file  PDFBinderLog.txt in the same
    location records the process and results.
    -  You can set bEch = false in the code to turn off any display on the screen.
    This is necessary when you  call the menu function from within other programs
    of C IAC, VB IAC, JavaScript. 
    -  An optional file filter is used to pre-process the files. The filter only allows
    the files with predefined types to be processed. You can change the file type list
    as you wish. Using a filter may ensure a smooth automation process, since you can put
    only well-tested file types in the filter. To turn off the filter, you can set
    gPDFBinderFileFilter = "" or not to define USE_FILE_FILTER 
    - Note this is a sample only, developers need to make further improvement for
    their actual use. For example, you can set up a list of files to use the method for
    the conversion and binding. And you can add code to handle special file types.
      @see AVConversionConvertToPDFWithHandler
    @see AVConversionEnumToPDFConverters
    @see ASFileSysDestroyFolderIterator
    @see PDDocOpen
    @see PDDocClose
    @see PDDocInsertPages
    @see PDDocCreatePage
    @see PDDocDeletePages
    @see PDPageRelease
    @see ASFileSysCreatePathName
    @see ASFileSysFirstFolderItem
    @see ASFileSysNextFolderItem
    @see ASFileSysGetNameFromPath
    @see ASFileSysReleasePath
ACCB1 void ACCB2 PDFBinderCommand(void*)
    // if the menu item clicked with Shift key pressed down, go to interactive mode.
    // let the user to choose a folder and process all the file in the folder.
    ASText dispText = ASTextNew();
    char PDFBinderFolder[MAX_STRING_LENGTH];
    ASBool shiftKeyIsDown = ((AVSysGetModifiers() & AV_SHIFT) != 0);
    if(shiftKeyIsDown) {
        AVOpenSaveDialogParamsRec dialogParams;
        // Configure the dialog box parameters.
        memset (&dialogParams, 0, sizeof (AVOpenSaveDialogParamsRec));
        dialogParams.size = sizeof(AVOpenSaveDialogParamsRec);
        dialogParams.windowTitle = ASTextFromScriptText("Choose folder with files to bind",kASRomanScript);
        dialogParams.flags |= kAVOpenSaveAllowForeignFileSystems;
        dialogParams.initialFileSys = ASGetDefaultUnicodeFileSys();
        ASPathName thePath;
        ASFileSys fileSys;
        AVAppBeginModal(NULL);
        if(ASBoolToBool(AVAppChooseFolderDialog(&dialogParams, &fileSys, &thePath)) != true){
            AVAppEndModal();
            //AVAlertNote("Failed to select the folder");
            return;
        AVAppEndModal();
#ifdef WIN_PLATFORM       
        ASFileSysDisplayASTextFromPath(ASGetDefaultUnicodeFileSys(), thePath, dispText);
        ASHostEncoding bestEnc = ASTextGetBestEncoding(dispText, (ASHostEncoding)PDGetHostEncoding());
        strncpy(PDFBinderFolder, ASTextGetEncoded(dispText, bestEnc), MAX_STRING_LENGTH - 1);
#else       
        ASPlatformPath aspPath;
        ASFileSysAcquirePlatformPath(fileSys, thePath, ASAtomFromString("POSIXPath"), &aspPath);
        strncpy(PDFBinderFolder, (char *)ASPlatformPathGetPOSIXPathPtr(aspPath), MAX_STRING_LENGTH - 1);
        ASFileSysReleasePlatformPath(fileSys, aspPath);
        // remove extra path separator
        char e = PDFBinderFolder[strlen(PDFBinderFolder)-1];
        if(e == ':' || e == '/')
            PDFBinderFolder[strlen(PDFBinderFolder)-1]='\0';
        dispText = ASTextFromScriptText(PDFBinderFolder, kASEUnicodeScript);
#endif
        ASFileSysReleasePath(fileSys, thePath);
    // Otherwise, the hard coded file path will be used.
    else {
        strcpy(PDFBinderFolder, STRING_PDFBinderFolder);
        dispText = ASTextFromScriptText(PDFBinderFolder, kASRomanScript);
    // instruction message
    char strMsg[MAX_STRING_LENGTH] = "";
    sprintf(strMsg, "This function will convert and process Tiff and PDF files in the selected directory. ");
    strcat(strMsg, " You need to copy your files in C:\\Fairfax\\Adobe\\in directory." );
    strcat(strMsg, " Files will be processed into C:\\Fairfax\\Adobe\\PDFA directory." );
    strcat(strMsg, " If you are ready, click OK to continue, or click Cancel to quit. " );
    strcat(strMsg, " \nNote you can press down Shift key and click the menu item to have a folder selection. " );
    strcat(strMsg, " \nNote you can turn off the echo message by setting bEcho = false and rebuild the code. " );
    if(ASBoolToBool(bEcho)==true){
        ASInt32 choice = AVAlert(ALERT_CAUTION, strMsg, "OK", "Cancel", NULL, true);
        if(choice==2) {
            return;
    // create a new target pdf file with one empty page
    PDDoc TargetPDF = PDDocCreate();
    ASFixedRect mediaBox = { fixedZero, ASInt32ToFixed(792), ASInt32ToFixed(612), fixedZero };
    PDPage emptyPage = PDDocCreatePage (TargetPDF, PDBeforeFirstPage, mediaBox);
    PDPageRelease (emptyPage);
    //     get available headlers and set our file filter
    char ValidExt[MAX_STRING_LENGTH];
    memset(ValidExt, 0, MAX_STRING_LENGTH);
#ifdef SHOW_TOPDF_HANDLER_TYPES   
    // enumerate AVConversioToPDF handlers to get all available file
    // types which can be converted to PDF.
    AVConversionEnumToPDFConverters(MyAVConversionToPDFEnumProc, (AVConversionEnumProcData) ValidExt);
    //AVAlertNote("Converters Defined");
    //AVAlertNote(ValidExt);
    //AVAlertNote(gPDFBinderFileFilter);
#endif
#ifdef USE_FILE_FILTER    
    // set File filter
    strcpy(ValidExt, gPDFBinderFileFilter);
    //AVAlertNote(ValidExt);
#endif
    // process all files in the directory
    int iNumFiles = 0;
    int iNumFilesConverted = 0;
    char* Done = "Converted";
    char* NotDone = " - ";
    char fileName[MAX_FILENAME_LENGTH+1];
    ASFileSysItemPropsRec props;
    ASFolderIterator iter;
    ASPathName aspItem = NULL;
    memset(&props, 0, sizeof(props));
    props.size = sizeof(props);
    //AVAlertNote("Props Defined");
    ASPathName theFolder = NULL;
    ASFileSys fileSys = NULL;
    DURING
#ifdef WIN_PLATFORM   
    fileSys = ASGetDefaultFileSysForPath(ASAtomFromString("ASTextPath"), dispText);
    theFolder = ASFileSysCreatePathName (fileSys, ASAtomFromString("ASTextPath"), dispText, 0);
    //AVAlertNote("FileSys and Folder Defined");
#else
    fileSys = ASGetDefaultFileSysForPath(ASAtomFromString("POSIXPath"), PDFBinderFolder);
    theFolder = ASFileSysCreatePathName (fileSys,
                            ASAtomFromString("POSIXPath"), PDFBinderFolder, 0);
#endif
    if (theFolder==NULL) {
        //AVAlertNote("Fail to create ASPathName for the selected folder.");
        E_RTRN_VOID
    // Find first file in current directory
    if((iter = ASFileSysFirstFolderItem(fileSys, theFolder, &props, &aspItem))==FALSE) {
        //AVAlertNote("This is either an invalid folder or the folder contains no files.");
        E_RTRN_VOID
    ASFileSysReleasePath(fileSys, theFolder);
    //AVAlertNote("Folder Released");
    // get filename only
    if(ASFileSysGetNameFromPath(fileSys, aspItem, fileName, sizeof(fileName))) {
        E_RTRN_VOID
    HANDLER   
        // exception handling
        char errorMsg[256];
        ASGetErrorString (ASGetExceptionErrorCode(), errorMsg, 256);
        if(aspItem!=NULL) ASFileSysReleasePath(fileSys, aspItem);
        if(theFolder!=NULL) ASFileSysReleasePath(fileSys, theFolder);
        // display an error message.
        if(ASBoolToBool(bEcho)==true) {
            AVAlertNote (errorMsg);
        return;
    END_HANDLER
    //AVAlertNote(fileName);
    // go to binding if it's a valid type of file
    if(props.type == kASFileSysFile && PassPDFBinderFileFilter(fileName)) {
        char outFileName[] = "";
        //strcat(outFileName, STRING_PDFOutputFolder);
        //strcat(outFileName, FOLDERSYMBOL);
        //strcat(outFileName, fileName);
        strcat(outFileName, STRING_PDFOutputFolder);
        strcat(outFileName, FOLDERSYMBOL);
        strcat(outFileName, fileName);
        //AVAlertNote(outFileName);
        ASPathName outputFileName = ASFileSysCreatePathName (ASGetDefaultFileSys(), ASAtomFromString("Cstring"), outFileName, 0);
        BindingFileToPDF(aspItem, fileName, props, TargetPDF, outputFileName ,&iNumFiles, &iNumFilesConverted);
        //AVAlertNote("File Processed");
    ASFileSysReleasePath(fileSys, aspItem);
    // process all other files 
    while(ASFileSysNextFolderItem(fileSys, iter, &props, &aspItem)) {
        // get filename only
        if(ASFileSysGetNameFromPath(fileSys, aspItem, fileName, sizeof(fileName))) {
            return;
        // go to binding if it's a valid type of file
        if(props.type == kASFileSysFile && PassPDFBinderFileFilter(fileName))  {
            char outFileName[] = "";
            //strcat(outFileName, STRING_PDFOutputFolder);
            //strcat(outFileName, FOLDERSYMBOL);
            //strcat(outFileName, fileName);
            strcat(outFileName, STRING_PDFOutputFolder);
            strcat(outFileName, FOLDERSYMBOL);
            strcat(outFileName, fileName);
            //AVAlertNote(outFileName);
            ASPathName outputFileName = ASFileSysCreatePathName (ASGetDefaultFileSys(), ASAtomFromString("Cstring"), outFileName, 0);
            BindingFileToPDF(aspItem, fileName, props, TargetPDF, outputFileName, &iNumFiles, &iNumFilesConverted);
            //AVAlertNote("File Processed");
        ASFileSysReleasePath(fileSys, aspItem);
    ASPathName pdfPathName = NULL;
    DURING
    // close the findfile
    ASFileSysDestroyFolderIterator(fileSys, iter);
    // save and close the output pdf file
    // create path
    ASText pathText = ASTextNew();
    ASTextCatMany(
        pathText,
        dispText,
        ASTextFromScriptText(FOLDERSYMBOL, kASRomanScript),
        ASTextFromScriptText(OutputPdfFileName, kASRomanScript),
        NULL);
#ifdef WIN_PLATFORM
    ASFileSys fileSys = ASGetDefaultFileSysForPath(ASAtomFromString("ASTextPath"), pathText);
    pdfPathName = ASFileSysCreatePathName (fileSys,
                            ASAtomFromString("ASTextPath"), pathText, 0);
#else
    char path[MAX_STRING_LENGTH];
    strncpy(path, ASTextGetEncoded(pathText,
        ASTextGetBestEncoding(pathText, (ASHostEncoding)PDGetHostEncoding())), MAX_STRING_LENGTH - 1);
    ASFileSys fileSys = ASGetDefaultFileSysForPath(ASAtomFromString("POSIXPath"), path);
    pdfPathName = ASFileSysCreatePathName (fileSys,
                            ASAtomFromString("POSIXPath"), path, 0);   
#endif
    if(pdfPathName==NULL) {
        E_RTRN_VOID
    // delete the empty page
    if(PDDocGetNumPages(TargetPDF)>1) {
        PDDocDeletePages (TargetPDF, 0,0,NULL, NULL);
    // save
    //PDDocSave (TargetPDF, PDSaveFull | PDSaveCollectGarbage | PDSaveLinearized,
    //            pdfPathName, ASGetDefaultUnicodeFileSys(),    NULL, NULL);
    PDDocClose (TargetPDF);
    //ASFileSysReleasePath(fileSys, pdfPathName);
    HANDLER   
        // exception handling
        char errorMsg[256];
        ASGetErrorString (ASGetExceptionErrorCode(), errorMsg, 256);
        if(pdfPathName!=NULL) ASFileSysReleasePath(fileSys, pdfPathName);
        // display an error message.
        if(ASBoolToBool(bEcho)==true) {
            AVAlertNote (errorMsg);
        return;
    END_HANDLER
    // use this line to show the massage on screen if you need
    //if(ASBoolToBool(bEcho)==true) {
    AVAlertNote ("Folder Completed. PDF/A Output files generated.");
    return;
/* ConvertAndInsertFileToPDF
/** Internal function \n
** Convert a file to PDF, then insert it to target PDF file.
** @param aFileName IN  char string, filename.
** @param PDFfile IN/OUT PDDoc of the target PDF file.
** @return 0 if OK, 1 if failed.
int    ConvertAndInsertFileToPDF(ASPathName aPathName, char* aFileName, PDDoc PDFfile)
    PDDoc tempPDF;
    char* Ext;
    DURING
        // get file extention
        Ext = strrchr(aFileName,'.');
        if(Ext) {
            Ext++;
        else {
            E_RETURN (1);
        // if the file is PDF, open PDDoc
        if(strcmp(Ext,"PDF")==0 || strcmp(Ext,"pdf")==0) {
            tempPDF = PDDocOpen (aPathName, ASGetDefaultFileSys(), NULL, true);
            if(tempPDF==NULL) {
                PDDocClose(tempPDF);
                E_RETURN (1);
        // else convert it to PDF
        else
            // let it automatically find right handler for the file and do the job.
            AVConversionStatus stat = AVConversionConvertToPDF
                (kAVConversionAsyncOkay, //kAVConversionNoFlags
                  aPathName, ASGetDefaultFileSys(), &tempPDF, NULL);
            // check if successful
            if(stat != kAVConversionSuccess) {
                //AVAlertNote("Cannot convert the file.");
                E_RETURN (1);
    HANDLER   
        // exception handling
        char errorMsg[256];
        ASGetErrorString (ASGetExceptionErrorCode(), errorMsg, 256);
        // display an error message.
        if(ASBoolToBool(bEcho) == true) {
            AVAlertNote (errorMsg);
        return 1;
    END_HANDLER
    // insert new PDF into target PDF
    DURING
        // insert all pages of new pdfc to TargetPDFfile.
        PDDocInsertPages(PDFfile, PDLastPage, tempPDF, 0,
                        PDAllPages, PDInsertAll, NULL, NULL, NULL, NULL);
        PDDocClose(tempPDF);
    HANDLER
         char errorMsg[256];
        ASGetErrorString (ASGetExceptionErrorCode(), errorMsg, 256);
        if(ASBoolToBool(bEcho)==true) {
            AVAlertNote(errorMsg);
    END_HANDLER
        if(strcmp(Ext,"doc")==0) {
            char fname[40];
            sprintf(fname,"%s.pdf",aFileName);
            remove(fname);
        return 0;
/* MyAVConversionToPDFEnumProc
/** Internal callback function \n
** called for every AVConversionToPDFHandler.
** get the valid type (file extention) for the conversion. 
** @return true.
ACCB1 ASBool ACCB2 MyAVConversionToPDFEnumProc(AVConversionToPDFHandler handler,
                                             AVConversionEnumProcData data)
    ASUns16 numFileExt = handler->convFilter.numFileDescs;
    for (int i = 0; i < numFileExt; i++) {
        char* ext = handler->convFilter.fileDescs[i].extension;
        if(strlen(ext)>0) {
            strcat((char*) data, ext);
            strcat((char*) data, ",");
    return true;
/* this is alternative code to get right conversion handler for a specific file
   to be converted. It works with function AVConversionConvertToPDFWithHandler.
   It's not used now, but kept for user's reference.
ACCB1 ASBool ACCB2 AVConversionToPDFEnumFindHandler(AVConversionToPDFHandler handler,
                                             AVConversionEnumProcData data)
    ASUns16 numFileExt = handler->convFilter.numFileDescs;
    for ( int i = 0; i < numFileExt; i++)
        char* ext = handler->convFilter.fileDescs[i].extension;
        if(strlen(ext)) {
            if(!strcmp((char*) data, ext)) {
                gHandler = handler;
                return false;
    return true;
/* BindingFileToPDF
/** Internal callback function for binding process \n
** IN: char* aFilename, ASFileSysItemPropsRec nFileAttrb \n
**     PDDoc targetPDdDoc, int *ipTotal, \n
**     int *ipConverted, FILE *logfile \n
** OUT: int *ipTotal, int *ipConverted. \n
void BindingFileToPDF(ASPathName aPathName, char* aFilename, ASFileSysItemPropsRec nFileAttrb, PDDoc targetPDdDoc, ASPathName outputPathName, int *ipTotal, int *ipConverted)
    // ignore system, hidden files, and our target PDF and log file.
    if( nFileAttrb.isHidden 
        || (strcmp(aFilename,".")==0) || (strcmp(aFilename,".." )==0)
        || (strcmp(aFilename,OutputPdfFileName)==0) || (strcmp(aFilename,LogFileName)==0)) {
            return;
    (*ipTotal)++;
    char msg[MAX_STRING_LENGTH] = "";
    char* Done = "Converted";
    char* NotDone = " - ";
    // try to convert and insert it to target PDF file.
    // rc would be 0 for success, otherwise 1.
    int rc = ConvertAndSavePDFInTargetFolder(aPathName, aFilename, targetPDdDoc, outputPathName);
    // if converted
    if(rc==0) {
        (*ipConverted)++;
/* PassPDFBinderFileFilter
/** Internal callback function for binding process
** @return true if the IN aFilename is a valid file for PDF conversion,
** otherwise false.
ASBool PassPDFBinderFileFilter(char* aFilename)
#ifdef USE_FILE_FILTER
    // if the filter is empty, any file will pass.
    if(strlen(gPDFBinderFileFilter)==0)
        return true;
    char* Ext = strrchr(aFilename,'.');
    if(Ext!=NULL) {
        Ext++;
        if(strstr(gPDFBinderFileFilter, Ext)) {
            return true;
    return false;
#else
        // not use filter, any file will pass.
        return true;
#endif
/* ConvertAndInsertFileToPDF
/** Internal function \n
** Convert a file to PDF, then insert it to target PDF file.
** @param aFileName IN  char string, filename.
** @param PDFfile IN/OUT PDDoc of the target PDF file.
** @return 0 if OK, 1 if failed.
int    ConvertAndSavePDFInTargetFolder(ASPathName aPathName, char* aFileName, PDDoc PDFfile, ASPathName outputPathName)
    PDDoc tempPDF;
    char* Ext;
    DURING
        // get file extention
        Ext = strrchr(aFileName,'.');
        if(Ext) {
            Ext++;
        else {
            E_RETURN (1);
        // if the file is PDF, open PDDoc
        if(strcmp(Ext,"PDF")==0 || strcmp(Ext,"pdf")==0) {
            tempPDF = PDDocOpen (aPathName, ASGetDefaultFileSys(), NULL, true);
            if(tempPDF==NULL) {
                PDDocClose(tempPDF);
                E_RETURN (1);
        // else convert it to PDF
        else
            // let it automatically find right handler for the file and do the job.
            AVConversionStatus stat = AVConversionConvertToPDF
                (kAVConversionAsyncOkay, //kAVConversionNoFlags
                  aPathName, ASGetDefaultFileSys(), &tempPDF, NULL);
            // check if successful
            if(stat != kAVConversionSuccess) {
                //AVAlertNote("Cannot convert the file.");
                E_RETURN (1);
            else {
                //change Extension
                ASText asTmp = ASTextNew();
                ASFileSysDisplayASTextFromPath(ASGetDefaultUnicodeFileSys(), outputPathName, asTmp);
                //AVAlertNote(ASTextGetScriptText(asTmp, kASRomanScript));
                if(strcmp(Ext,"TIF")==0 || strcmp(Ext,"tif")==0){
                    ASTextReplace(asTmp, ASTextFromScriptText(".tif", kASRomanScript), ASTextFromScriptText(".pdf", kASRomanScript));
                } else {
                    ASTextReplace(asTmp, ASTextFromScriptText(".tiff", kASRomanScript), ASTextFromScriptText(".pdf", kASRomanScript));
                //AVAlertNote(ASTextGetScriptText(asTmp, kASRomanScript));
                outputPathName = ASFileSysCreatePathName (ASGetDefaultUnicodeFileSys(), ASAtomFromString("ASTextPath"), asTmp, 0);
    HANDLER   
        // exception handling
        char errorMsg[256];
        ASGetErrorString (ASGetExceptionErrorCode(), errorMsg, 256);
        // display an error message.
        if(ASBoolToBool(bEcho) == true) {
            AVAlertNote (errorMsg);
        return 1;
    END_HANDLER
    // Run OCR and Save new PDF into target PDF
    DURING
        //    OCR
        ASAtom cmdName;
        AVCommand cmd;
        cmdName=ASAtomFromString("PaperCapture");
        cmd=AVCommandNew(cmdName);
        ASCab config = ASCabNew();
        ASCabPutInt (config, "UIPolicy", kAVCommandUISilent);       //hide the interface
        if (kAVCommandReady ==     AVCommandSetConfig (cmd, config)) {
            //AVAlertNote("Config Ready");
        ASCab inputs = ASCabNew();
        ASCabPutPointer (inputs, kAVCommandKeyPDDoc, PDDoc, tempPDF, NULL);
        if (kAVCommandReady == AVCommandSetInputs (cmd, inputs)) {
            //AVAlertNote("Input Ready");
        ASCabDestroy (inputs);
        AVCommandStatus status = AVCommandExecute(cmd);
                    //switch (status) {
                    //    case kAVCommandReady :
                    //        AVAlertNote("Not working, but ready to work.");
                    //        break;
                    //    case kAVCommandWorking :
                    //        AVAlertNote("Still working");
                    //        break;   
                    //    case kAVCommandDone :
                    //        AVAlertNote("Done working");
                    //        break;   
                    //    case kAVCommandInError :
                    //        AVAlertNote("In Error");
                    //        break;       
                    //    case kAVCommandNotExecuted :
                    //        AVAlertNote("Command not executed due to lack of objects on which the command to be executed");
                    //        break;
        AVCommandDestroy(cmd);
        //Save
        //PDDocSave (tempPDF, PDSaveFull | PDSaveCollectGarbage | PDSaveLinearized, outputPathName, ASGetDefaultUnicodeFileSys(),    NULL, NULL);
        //ClosePDF
        //PDDocClose(tempPDF);
        //Convert to PDF/A Compliance
        //Select the right handler
        AVConversionEnumFromPDFConverters(myAVConversionFromPDFEnumProc, NULL);
        // do conversion
        AVConversionStatus stat = AVConversionConvertFromPDFWithHandler(RightHandler, NULL, kAVConversionAsyncOkay, tempPDF, outputPathName,  ASGetDefaultFileSys(), NULL);
        // check the returned status and show message
        //if (stat == kAVConversionSuccess)
        //                AVAlertNote( "The PDF/A file was saved in output folder." );
        //else if (stat == kAVConversionFailed)
        //                AVAlertNote( "The PDF/A conversion failed." );
        //else if (stat == kAVConversionSuccessAsync)
        //                AVAlertNote( "The conversion will continue asynchronously." );
        //else if (stat == kAVConversionCancelled)
        //                AVAlertNote( "The conversion was cancelled." );
        //Save
        //PDDocSave (tempPDF, PDSaveFull | PDSaveCollectGarbage | PDSaveLinearized, outputPathName, ASGetDefaultUnicodeFileSys(), NULL, NULL);
        //ClosePDF
        PDDocClose(tempPDF);
        ASFileSysReleasePath(ASGetDefaultFileSys(), outputPathName);
    HANDLER
         char errorMsg[256];
        ASGetErrorString (ASGetExceptionErrorCode(), errorMsg, 256);
        if(ASBoolToBool(bEcho)==true) {
            AVAlertNote(errorMsg);
    END_HANDLER
        if(strcmp(Ext,"doc")==0) {
            char fname[40];
            sprintf(fname,"%s.pdf",aFileName);
            remove(fname);
        return 0;
//Select the appropiate handler for the PDF/A conversion
static ACCB1 ASBool ACCB2 myAVConversionFromPDFEnumProc(AVConversionFromPDFHandler handler, AVConversionEnumProcData data)
    AVFileFilterRec filter = handler->convFilter;
    ASUns16 numFileExt = filter.numFileDescs;
    char *kUniqueID = handler->uniqueID;
    // go through the conversion handlers to find a handler for PDF extension files and the unique key matches the PDF/A one.
    for  (ASInt32  i = 0; i < numFileExt; i++)
        if  (strlen(handler->convFilter.fileDescs[i].extension)>0)
            // found it, fill in the handler and return false to stop going on.
            if (!strcmp(handler->convFilter.fileDescs[i].extension, "pdf") && !strcmp(kUniqueID,"com.callas.preflight.pdfa")) {
                RightHandler = handler;
                return  false ;
    return true;

There are some options for various APIs to run "kinda silent" - but again, Acrobat is designed for INTERACTIVE use…so "completely silent" isn't really an option.
As for speed – you'd need to be MUCH MORE specific about where your slow downs are.  Have you profiled?
From: Adobe Forums <[email protected]<mailto:[email protected]>>
Reply-To: "[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>>
Date: Mon, 12 Dec 2011 07:39:08 -0800
To: Leonard Rosenthol <[email protected]<mailto:[email protected]>>
Subject: Slow processing and getting opening errors/warnings
Re: Slow processing and getting opening errors/warnings
created by FFX-ER<http://forums.adobe.com/people/FFX-ER> in Acrobat SDK - View the full discussion<http://forums.adobe.com/message/4079175#4079175

Similar Messages

  • HT3743 Iphone 4 unlocked by at&t i did a restore from itunes and get an error message "your request cannot be processed please try again after sometime" I tried for a week now but same problem, please advice

    I have Iphone4 brought from at&t USA(carrier locked) and i am in india now, i contacted at&t and requested for an unlock for me to use with indian carriers.
    I got an email confirming the unlock has been completed from at&t and asked me to connect the device to itunes and do a back&restore, after the restore process i get an error message on itunes "your request cannot be processed, please try again after sometime" i tried it with my airtel sim card and also at&t sim card but did not work. I contacted at&t and they confirmed that the unlock request was successful but i still get the same error.
    Please kindly help me if i need to do someting to be able to activate and unlock my iphone4

    Excuse me. I am on a contract with O2 with an iphone 4s, suddenly xmas day it said "no service", took it to o2 who sent it to apple factory who refused to repair it because a screw missing.  I wouldnt know have never opened phone in my life,wouldnt know how to, then went direct to Apple Regent St London who also said "screw missing, warrenty void, then produced a phone just out of contract due to upgrade,a vodaphone carrier 3gs, it was unlocked but then told by apple the owner had to go to vodaphone and get it unlocked on their books which could take up to 48 hours, it is now 72 hours later and i have the same error despite backing up old phone with i tunes and i cloud,am very angry and am paying alot for a contract every month, all i can see is "no service and waiting for activation" and all ths started when I upgraded to IOS 6.Am extremely upset and still under warranty but no one seems to want to help me to connect to WiFI, i cannot keep going to Apple Regent Street at lunchtime and be shooed of with excuses, this replacement phone 3gs should work and it doesnt.  Am extremely annoyed with the info i have been provded wth by Apple staff.Now I havent had  a phone since 25th december.

  • HT1998 Why can't I uninstall AirPort 4.2 from my Windows 7 PC..  I downloading and reinstalling the 4.2 but during the installation process I get an error.  It reads...    "1608: Unable to Create InstallDriver instance Return Code -2147024894

    Why can't I uninstall AirPort 4.2 from my Windows 7 PC..  I tried downloading and reinstalling the 4.2 but during the installation process I get an error.  It reads...    "1608: Unable to Create InstallDriver instance Return Code -2147024894

    You should not install it again..
    Boot the computer into safe mode and try the uninstall again.
    No luck you will have to manually uninstall which is a pain. Delete the files and open regedit and delete the registry entries.. better still use the system restore to go back to a previous system where you had no 4.2 installed..
    Or just ignore it and install the latest 5.6.1 and if it gives trouble well do a clean install of windows.

  • I am trying to open my iTunes on a Windows XP laptop and get the error message 42404 "iTunes application could not be opened.  Please repair or reinstall QuickTime".  I did that and it did not help.  Any ideas?

    I am trying to open my iTunes on a Windows XP laptop and get the error message 42404 "iTunes application could not be opened.  Please repair or reinstall QuickTime".  I did that and it did not help.  Any ideas?

    Let's see if a more rigorous uninstall/reinstall procedure gets us past that, nancy. See the following troubleshooting document:
    Removing and Reinstalling iTunes, QuickTime, and other software components for Windows XP

  • I have iTunes open in Windows XP and get an error 45048 message when I try to update apps thru the store. How can I fix this? I have reinstalled iTunes twice.

    I have iTunes, latest version, open in Windows XP and get an error 45048 message when I try to update apps thru the store. How can I fix this? I have reinstalled iTunes twice but problem continues.

    Try contacting iTunes via email to check if there is an issue with the account. go to apple.com/support/itunes
    Click on iTunes Store account and billing and select inquiries. On the right side click on "email us".
    Before doing that trying viewing your account information first. Open the iTunes on you mac, look at the menu and select store and select view my account. Try removing the card (this is only applicable if you don't have a pending charges with iTunes) and hit done. Sign out, quit iTunes and sign back in and try updating the apps again.

  • I not able to open any links in the emails I receive and get an "Error: No associated application could be found" when I click on it. HELP!! What's going on? This happened after I downloaded Chrome and then

    I not able to open any links in the emails I receive and get an "Error: No associated application could be found" when I click on a link. HELP!! What's going on? This happened after I downloaded Chrome and then decided to delete it. 

    I have Lion and I just came across this link and it took care of the problem.
    Jose Antonio Solis
    Re: Lion: Delete google chrome completely include user profile?
    Try deleting:
    ~Library/Application Support/Google
    and
    ~Library/Caches/Google/Chrome

  • I have purchased a new Mac power book 10.9.2.  I cannot open illustrator CS4 and get the error message 150:30.  Can you help?

    I have purchased a new Mac power book 10.9.2.  I cannot open adobe illustrator CS4 and get the error message 150:30.  Can you help?

    You are welcome, Sharon.
    You should be aware that the newest version, CC, is only available as a subscription.
    CS6 can be purchased at Adobe, or second hand, see below.
    Older versions such as CS5 can only be bought second hand, with a licence transfer through Adobe, requiring that the licence has not been used as a basis for an upgrade.

  • Process chains get an error when run analysis process

    When my PRD system‘s process chains run analysisi process, I  gets below error message:
    Error occurred when starting the parser: Error when opening an RFC connection (FUNCTION: 'R
    Message no. BRAINOLAPAPI011
    Diagnosis
    Failed to start the MDX parser.
    System Response
    Error when opening an RFC connection (FUNCTION: 'R
    Procedure
    Check the Sys Log in Transaction SM21 and test the TCP-IP connection MDX_PARSER in Transaction SM59.
    It's OK when i test the TCP-IP connection MDX_PARSER in Transaction SM59.
    The Sys Log in Transaction SM21(error part):
    M Wed Mar 19 09:22:50 2014
    M  *** ERROR => ThPOpen: ExecPopen("/usr/sap/BWP/DVEBMGS00/exe/tp" bwprd sapgw00 18933904 IDX=35, r, ..) returned -14 [thxxexec.c
    M  {root-id=532810645F5D12A0E1008000C0A8642F}_{conn-id=5328109B5F5D12A0E1008000C0A8642F}_5
    A  RFC 1878  CONVID 18933904
    A   * CMRC=0 DATA=0 STATUS=0 SAPRC=0 RfcExecProgramKernel RfcRaiseErrorMessage cmd could not be started by OS (rc = 1)
    A  RFC> ABAP Programm: SAPLSTPA (Transaction: )
    A  RFC> User: JY-LKZ (Client: 900)
    A  RFC> Destination: CALLTP_AIX (handle: 8, DtConId: 530F4E5C30AF4550E1008000C0A8642E, DtConCnt: 0, ConvId: ,)
    A  RFC SERVER> RFC Server Session (handle: 1, 68443927, {5328109B-5F5D-12A0-E100-8000C0A8642F})
    A  RFC SERVER> Caller host:
    A  RFC SERVER> Caller transaction code: STMS (Caller Program: SAPLTMSC)
    A  RFC SERVER> Called function module: TMS_CI_START_SERVICE
    A  *** ERROR => RFC Error RFCIO_ERROR_SYSERROR in abrfcpic.c : 1887
    FUNCTION: 'RfcExecProgramKernel'
    RfcRaiseErrorMessage cmd could not be started by OS (rc = 1)
    PROG ="/usr/sap/BWP/DVEBMGS00/exe/tp" bwprd sapgw00 18933904 IDX=35
    [abrfcio.c    9213]
    A  {root-id=532810645F5D12A0E1008000C0A8642F}_{conn-id=5328109B5F5D12A0E1008000C0A8642F}_5
    A  TH VERBOSE LEVEL FULL
    A  ** RABAX: end RX_GET_MESSAGE
    M
    M Wed Mar 19 09:23:15 2014
    M  *** ERROR => ThPOpen: ExecPopen("/usr/sap/BWP/DVEBMGS00/exe/tp" bwprd sapgw00 18968493 IDX=61, r, ..) returned -14 [thxxexec.c
    M  {root-id=532810645F5D12A0E1008000C0A8642F}_{conn-id=532811958F750F10E1008000C0A8642F}_1
    A  RFC 1878  CONVID 18968493
    A   * CMRC=0 DATA=0 STATUS=0 SAPRC=0 RfcExecProgramKernel RfcRaiseErrorMessage cmd could not be started by OS (rc = 1)
    A  RFC> ABAP Programm: SAPLSTPA (Transaction: )
    A  RFC> User: TMSADM (Client: 000)
    A  RFC> Destination: CALLTP_AIX (handle: 3, DtConId: 530F4E7830AF4550E1008000C0A8642E, DtConCnt: 0, ConvId: ,)
    A  RFC SERVER> RFC Server Session (handle: 1, 70212851, {53281195-8F75-0F10-E100-8000C0A8642F})
    A  RFC SERVER> Caller host:
    A  RFC SERVER> Caller transaction code: STMS (Caller Program: SAPLTMSC)
    A  RFC SERVER> Called function module: TMS_CI_START_SERVICE
    A  *** ERROR => RFC Error RFCIO_ERROR_SYSERROR in abrfcpic.c : 1887
    FUNCTION: 'RfcExecProgramKernel'
    RfcRaiseErrorMessage cmd could not be started by OS (rc = 1)
    PROG ="/usr/sap/BWP/DVEBMGS00/exe/tp" bwprd sapgw00 18968493 IDX=61
    [abrfcio.c    9213]
    A  {root-id=532810645F5D12A0E1008000C0A8642F}_{conn-id=532811958F750F10E1008000C0A8642F}_1
    A  TH VERBOSE LEVEL FULL
    A  ** RABAX: end RX_GET_MESSAGE.
    ps.
    1、IT's everything ok in the development system.
    2、It’s ok when i repeat this analysis process .
    3、It’s ok when i run this analysis process in analysis process designer.
    4、Attachment is the sys log in sm21.
    Thanks everyone.

    Hi Vignesh.B,
    Yes,it's not user's problem . But i don't  think it APD's problem .Cause all APD has the same problem and .
    Below is one of APD souce and target :
    Hope this information  is useful .
    Regards,
    Lian

  • I want to de-install mac-excel test version and get the error message: you have not the privileges to de-install. Please login with the Mac-OS account you have installed mac-excel originally'. I don't know this account anymore. I am sysadm

    I want to de-install mac-excel test version and get the error message: 'You have not the privileges to de-install. Please login with the Mac-OS account you have installed mac-excel originally'. I don't know this account anymore. Possibly it does not exist anymore. anybody out there who can help ?

    Hi, I may suggest to activate the root account and try the uninstall process from that account. To do so, you have to:
    Go to System Preferences a open up the Users pane;
    On the left side of the pane, you shuold see Login Options;
    Enabled editing option clicking on the lock (it will ask your password);
    Once the pane is enabled, you should see something like Server Account Network (sorry my OS is in italian, so I don't exactly know the right translation), and right next to it a button;
    Click on that button, and a new pane shows up. Click on Open Directory Utility, and on the upper bar of OS X click on Edit;
    Select Enable Root Account (you can set a password, or not);
    Done that, you should log out and when the login window show up, type on the user field "root" and the password you choose;
    Theorically, from this account you will be able to unistall the application.
    After completing your task, I reccomend you to disable the root account, just by loggin in your personal account and repeating the steps I described before. Hope it helps

  • Trying to sync iPhone 4 with itunes and get an error message PLEASE help

    I am currently using and iPhone 4. This morning I had synced my iPhone with itunes and it was working fine. I came home and wanted to add some music and such to it and all of a sudden i will plug it in to itunes and i,t looks like its going gets to step 2 of 6 (which is the back up process) and then an error message comes up saying itunes has stopped working, my only option to do is exit the window..
    Any ideas why this would be the case? its really frustrating me. I am also not the most computer savvy.
    Thanks

    Try reinstalling iTunes  http://www.apple.com/itunes/
    If that doesn't help, if you are using a Windows based computer, could be your anti virus software or your firewall that's preventing the sync.
    iTunes for Windows: Troubleshooting security software issues

  • I reinstalled X pro on my newish computer and get appcrash error message - how do i fix? bill

    I reinstalled my acrobat X pro in my new computer and when I try to open it I get the APPRASH error message.  I cannot print documents from word 7 to acrobat either and the acrobat printer doesn't show on my printer selection. I downloaded Acrobat reader 11 and it will not read pdf documents.  How do I fix? Bill

    here's the error message i get in reader 11
    Problem signature:
    Problem Event Name: BEX
    Application Name: AcroRd32.exe
    Application  Version: 11.0.7.79
    Application Timestamp: 536b80b0
    Fault Module Name: StackHash_0a9e
    Fault Module  Version: 0.0.0.0
    Fault Module Timestamp: 00000000
    Exception Offset: 0050005c
    Exception  Code: c0000005
    Exception Data: 00000008
    OS  Version: 6.1.7601.2.1.0.256.48
    Locale ID: 1033
    Additional Information 1: 0a9e
    Additional Information  2: 0a9e372d3b4ad19135b953a78882e789
    Additional Information  3: 0a9e
    Additional Information  4: 0a9e372d3b4ad19135b953a78882e7
    my word program is officei home and business 2010
    In a message dated 5/20/2014 12:48:18 P.M. Eastern Daylight Time, 
    [email protected] writes:
    i  reinstalled X pro on my newish computer and get appcrash error message -
    how do i fix? bill
    created by Test Screen  Name
    (https://forums.adobe.com/people/TestScreenName)  in Acrobat Installation & Update Issues - _View the full 
    discussion_ (https://forums.adobe.com/message/6394814#6394814)

  • Lost all photos on my iPhoto and get the ERROR WRITING TO DISK when trying to reload from Time Machine. iPhoto cannot import your photos because there was a problem writing to the volume containing your iPHOTO LIBRARY  . Looking for solution.

    Lost all photos on my iPhoto and get the ERROR WRITING TO DISK when trying to reload from Time Machine. iPhoto cannot import your photos because there was a problem writing to the volume containing your iPHOTO LIBRARY  . Looking for solution.

    Problems such as yours are sometimes caused by files that should belong to you but are locked or have wrong permissions. This procedure will check for such files. It makes no changes and therefore will not, in itself, solve your problem.
    First, empty the Trash, if possible.
    Triple-click anywhere in the line below on this page to select it, then copy the selected text to the Clipboard by pressing the key combination command-C:
    find ~ $TMPDIR.. \( -flags +sappnd,schg,uappnd,uchg -o ! -user $UID -o ! -perm -600 \) 2>&- | wc -l | pbcopy
    Launch the built-in Terminal application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad. Click Utilities, then Terminal in the icon grid.
    Paste into the Terminal window (command-V). The command may take a noticeable amount of time to run. Wait for a new line ending in a dollar sign ($) to appear.
    The output of the command will be a number. It's automatically copied to the Clipboard. Please paste it into a reply.
    The Terminal window doesn't show the output. Please don't copy anything from there.

  • I updated Itunes today to the latest version. Windows 7 64bit. None of my drivers work and get an error when itunes starts, about registry setting for reading and writing dvds and cds missing. Anyone else have the same issue. I downloaded itunes again, re

    I updated Itunes today to the latest version. Windows 7 64bit. None of my drivers work and get an error when itunes starts, about registry setting for reading and writing dvds and cds missing. Anyone else have the same issue. I downloaded itunes again, reinstalled still have same issue.

    I'd start with the following document, with one modification. At step 12 after typing GEARAspiWDM press the Enter/Return key once prior to clicking OK. (Pressing Return adds a carriage return in the field and is important.)
    iTunes for Windows: "Registry settings" warning when opening iTunes

  • Trying to download InDesign CC and getting an error message-

    Trying to download InDesign CC and getting an error message… "Unable to launch Adobe InDesign as you do not have sufficient permissions to access the preferences folders. Ensure that you have appropriate permissions and then restart Adobe InDesign". All other apps that I've downloaded are working properly, but InDesign won't open.
    Here's the screen shot of the error box...

    Hi McMilla,
    as per the screen shot it looks like we dont have enough permissions on your Preference folder . I would suggest the following steps and let us know if these worked or not for you  .
    Go to //Library/Preferences/
            ~/library/Preferences
             /library/application support/Adobe
            ~/Library/application support/Adobe
    and give full permissions to Preferences folder and the Adobe folder.
    Cheers,
    Kartikay Sharma

  • I upgraded to ios7 it has extremely slow charging and gets discharged soon and on its own without using my cel pls guide me I'm so worried pls pls guide

    I upgraded to ios7 it has extremely slow charging and gets discharged soon and on its own without using my cel pls guide me I'm so worried pls pls guide

    My daughter has had her Razr for about 9 months now.  About two weeks ago she picked up her phone in the morning on her way to school when she noticed two cracks, both starting at the camera lens. One goes completely to the bottom and the other goes sharply to the side. She has never dropped it and me and my husband went over it with a fine tooth comb. We looked under a magnifying glass and could no find any reason for the glass to crack. Not one ding, scratch or bang. Our daughter really takes good care of her stuff, but we still wanted to make sure before we sent it in for repairs. Well we did and we got a reply from Motorola with a picture of the cracks saying this was customer abuse and that it is not covered under warranty. Even though they did not find any physical damage to back it up. Well I e-mailed them back and told them I did a little research and found pages of people having the same problems. Well I did not hear from them until I received a notice from Fed Ex that they were sending the phone back. NOT FIXED!!! I went to look up why and guess what there is no case open any more for the phone. It has been wiped clean. I put in the RMA # it comes back not found, I put in the ID #, the SN# and all comes back not found. Yet a day earlier all the info was there. I know there is a lot more people like me and all of you, but they just don't want to be bothered so they pay to have it fix, just to have it do it again. Unless they have found the problem and only fixing it on a customer pay only set up. I am furious and will not be recommending this phone to anyone. And to think I was considering this phone for my next up grade! NOT!!!!

Maybe you are looking for

  • Billing of Delivery only after Goods receipt is complete

    Hello Experts, I am stuck in one of the requirements and require assistance from all the experts out there.  We are currently dispatching products to our branch offices using Purchase orders.  we create deliveries and then we goods issue this deliver

  • Detecting files in a folder

    Hi. Is it possible for flash to detect the number of files (ie. images) stored in a folder / directory on the server or local machine. In the same way that it can look into an xml file and detect the number of nodes (i know this is completly differen

  • Select one record for each member of the group

    Hi, am having a table where in i will be having data for so many group members. i need to fetch data for a particular group members whose number of rows of data may be more in numbers (but i want only one row of data for each member of the group) her

  • Is there a way to "stamp" PDF files with the purchaser's email address?

    I would like to sell PDF reports and/or eBooks via BC, but I would like to be able to stamp each such PDF/eBook with the purchaser's email address. There are certainly stand-alone PDF stamper programs and some providers like gumroad.com already offer

  • Context-Sensitive Help in RoboHelp 9

    Hi -- I recently upgraded from RoboHelp 5 to RoboHelp 9.  My first WebHelp project that I created using RoboHelp 9 is giving me problems with Context-Sensitive Help.  When a user clicks on a Help link that is supposed to bring him/her to a specific t