> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Gestion des erreurs lors de l'export PDF/XPS

> Gérez les erreurs d'export PDF/XPS dans ABBYY FineReader Engine (FREN_E_INVALID_CREATION_DATE_FORMAT, FREN_E_INVALID_MODIFICATION_DATE_FORMAT) causées par des dates de métadonnées non conformes à PDF 2.0.

Lors de l'export d'un document au format PDF ou XPS, vous pouvez rencontrer certaines erreurs spécifiques :

* FREN\_E\_INVALID\_CREATION\_DATE\_FORMAT ;
* FREN\_E\_INVALID\_MODIFICATION\_DATE\_FORMAT.

Ces erreurs surviennent si la date de création ou de modification spécifiée dans les métadonnées du document n'est pas conforme à la norme PDF 2.0. Le format de date correct est D:YYYYMMDDHHmmSSOHH'mm, où YYYY correspond à l'année, MM au mois, DD au jour, HHmmSS à l'heure, et OHH'mm à la valeur absolue du décalage par rapport au Temps Universel.

Pour gérer les erreurs de ce type, vous pouvez soit modifier les paramètres d'export de la date, soit corriger la date pour qu'elle soit conforme au format requis.

Pour modifier les paramètres d'export de la date :

1. Récupérez le sous-objet [DocumentContentInfoWritingParams](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams) de l'objet de paramètres d'export correspondant à votre format de sortie :
   * Pour l'export PDF, vous pouvez utiliser la propriété [PDFFeatures](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportparams#pdffeatures) de l'objet [PDFExportParams](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportparams) pour accéder à l'objet [PDFExportFeatures](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportfeatures), puis utiliser sa propriété [MetaDataWritingParams](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportfeatures#metadatawritingparams) pour obtenir l'objet [DocumentContentInfoWritingParams](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams).
   * Pour l'export XPS, utilisez la propriété [MetaDataWritingParams](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/xpsexportparams#metadatawritingparams) de l'objet [XPSExportParams](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/xpsexportparams).
2. Les propriétés [WriteCreationDate](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams#writecreationdate) et [WriteModificationDate](/fr/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams#writemodificationdate) de l'objet DocumentContentInfoWritingParams déterminent quelles dates doivent être enregistrées dans le document de sortie. Vous pouvez utiliser la valeur WD\_No pour désactiver l'enregistrement des dates et la valeur WD\_Current pour utiliser la date actuelle.
3. Relancez l'export du document en utilisant, par exemple, la méthode [Export](/fr/fine-reader/engine/api-reference/document-related-objects/frdocument/export-method) de l'objet [FRDocument](/fr/fine-reader/engine/api-reference/document-related-objects/frdocument), en passant l'objet de paramètres que vous venez de configurer comme dernier paramètre d'entrée.

Pour corriger la date :

1. Accédez à l'objet [DocumentСontentInfo](/fr/fine-reader/engine/api-reference/document-related-objects/documentcontentinfo) via la propriété [DocumentContentInfo](/fr/fine-reader/engine/api-reference/document-related-objects/frdocument#documentcontentinfo) de l'objet [FRDocument](/fr/fine-reader/engine/api-reference/document-related-objects/frdocument).
2. Modifiez la date dans la propriété [CreationDate](/fr/fine-reader/engine/api-reference/document-related-objects/documentcontentinfo#creation_date) ou [ModificationDate](/fr/fine-reader/engine/api-reference/document-related-objects/documentcontentinfo#modification_date) de l'objet DocumentСontentInfo.
3. Relancez l'export du document avec la méthode [Export](/fr/fine-reader/engine/api-reference/document-related-objects/frdocument/export-method) de l'objet FRDocument.

<div id="samples">
  ## Exemples
</div>

<Note>
  Les exemples de code fournis dans cette rubrique sont spécifiques à Windows.
</Note>

<Accordion title="Code C++">
  ```cpp theme={null}
  // Définir l'objet des paramètres d'export des dates de création et de modification
  FREngine::IPDFExportParamsPtr pdfExportParams = Engine->CreatePDFExportParams();
  pdfExportParams->PDFFeatures->MetaDataWritingParams->put_WriteCreationDate ( FREngine::WD_DocumentContentInfo );
  pdfExportParams->PDFFeatures->MetaDataWritingParams->put_WriteModificationDate ( FREngine::WD_DocumentContentInfo );
   
  // Corriger la date de création/modification et réexporter le document
  const int numberOfExportAttempts = 3;
  for (int i = 0; i < numberOfExportAttempts; i++)
  {
    try
    {
       frDocument->Export( pdfExportPath, FREngine::FEF_PDF, pdfExportParams );
    }
    catch (_com_error & e)
    {
       if (e.Error() == (int) FREngine::FREN_E_INVALID_CREATION_DATE_FORMAT) {
           frDocument->DocumentContentInfo->put_CreationDate( L"D:20181011234506Z" );
       }
       else if (e.Error() == (int) FREngine::FREN_E_INVALID_MODIFICATION_DATE_FORMAT) {
           pdfExportParams->PDFFeatures->MetaDataWritingParams->put_WriteModificationDate ( FREngine::WD_Current );
       }
       else
       {
             // Restaurer l'exception d'origine non gérée et la relancer
             throw;
       }
    }
  }
  ```
</Accordion>

<Accordion title="Code C#">
  ```csharp theme={null}
  // Définir les paramètres d'export des dates de création et de modification
  FREngine.PDFExportParams pdfExportParams = engineLoader.Engine.CreatePDFExportParams();
  pdfExportParams.PDFFeatures.MetaDataWritingParams.WriteCreationDate = FREngine.WriteDateEnum.WD_DocumentContentInfo;
  pdfExportParams.PDFFeatures.MetaDataWritingParams.WriteModificationDate = FREngine.WriteDateEnum.WD_DocumentContentInfo;
   
  // Gérer deux types d'erreurs d'export ; il ne doit donc pas y avoir plus de 3 tentatives d'export
  const int numberOfExportAttempts = 3;
  for (int i = 0; i < numberOfExportAttempts; ++i)
  {
      try
      {
         document.Export( "D:\\Demo.pdf", FREngine.FileExportFormatEnum.FEF_PDF, pdfExportParams );
         break;
      }
      catch (COMException error)
      {
         if (error.ErrorCode == (int)FREngine.ErrorCodes.FREN_E_INVALID_CREATION_DATE_FORMAT)
         {
             // Corriger la date de création
             document.DocumentContentInfo.CreationDate = "D:20181011234506Z";
         }
         else if (error.ErrorCode == (int)FREngine.ErrorCodes.FREN_E_INVALID_MODIFICATION_DATE_FORMAT)
         {
             // Modifier les paramètres d'export de la date de modification
             pdfExportParams.PDFFeatures.MetaDataWritingParams.WriteModificationDate = FREngine.WriteDateEnum.WD_Current;
         }
         else
         {
             // Restaurer l'exception d'origine non gérée et la relancer
             throw;
         }
      }
  }
  ```
</Accordion>

<div id="see-also">
  ## Voir aussi
</div>

[DocumentСontentInfo](/fr/fine-reader/engine/api-reference/document-related-objects/frdocument#documentcontentinfo)

[Codes de retour standard](/fr/fine-reader/engine/api-reference/return-codes)

[Réglage des paramètres d’export](/fr/fine-reader/engine/guided-tour/advanced-techniques/tuning-export-parameters)

[Gestion des erreurs](/fr/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/error-handling)
