> ## 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.

# Methode GetNextImageFile der Schnittstelle IImageSource

> Methode GetNextImageFile der Schnittstelle IImageSource in der ABBYY FineReader Engine API — Diese Methode wird clientseitig implementiert.

<Note>
  Diese Methode ist in FRE für Linux und Windows implementiert.
</Note>

Diese Methode wird clientseitig implementiert. Sie gibt die nächste Bilddatei aus der Warteschlange der Bildverarbeitung der Quelle zurück.

<Note>
  Wenn Sie unter Windows mit Bildern arbeiten, die bereits in den Speicher geladen wurden (z. B. wenn Sie die Methoden [OpenBitmap](/de/fine-reader/engine/api-reference/engine-object-iengine-interface/processing-methods/openbitmap-method) oder [OpenDib](/de/fine-reader/engine/api-reference/engine-object-iengine-interface/processing-methods/opendib-method) des [Engine](/de/fine-reader/engine/api-reference/engine-object-iengine-interface)-Objekts verwenden), implementieren Sie [GetNextImageDocument](/de/fine-reader/engine/api-reference/batch-processor/iimagesource/getnextimagedocument-method).
</Note>

Eine Implementierung der Methode GetNextImageFile kann eine Wartezeit auf die nächste Bilddatei beinhalten. Wir empfehlen jedoch nicht, lange Wartezeiten zu implementieren, da FineReader Engine nicht multithreadfähig ist. Während des Wartens auf die nächste Datei kann die Engine keine Meldungen aus den Erkennungsprozessen verarbeiten und keine Benachrichtigungen darüber empfangen, dass bestimmte Seiten verarbeitet wurden. Wenn Sie dennoch eine lange Wartezeit angeben müssen, kann die Methode GetNextImageFile 0 zurückgeben. In diesem Fall verarbeitet die Engine weiterhin Meldungen aus den Erkennungsprozessen, stellt erkannte Bilder bereit und prüft nach einer Weile, ob die Warteschlange leer ist. Wenn die Warteschlange nicht leer ist (d. h. wenn [IImageSource::IsEmpty](/de/fine-reader/engine/api-reference/batch-processor/iimagesource/isempty-method) FALSE zurückgibt), ruft die Engine die Methode GetNextImageFile erneut auf. Wenn die Methode GetNextImageFile jedoch 0 zurückgibt und keine weiteren Seiten mehr zu verarbeiten sind, gibt FineReader Engine die Steuerung an den Benutzer zurück: Die Methode [IBatchProcessor::GetNextProcessedPage](/de/fine-reader/engine/api-reference/batch-processor/batchprocessor/getnextprocessedpage-method) gibt 0 zurück.

<div id="syntax">
  ## Syntax
</div>

<div id="c">
  ### C++
</div>

```cpp theme={null}
HRESULT GetNextImageFile( IFileAdapter** Result );
```

### C\#

```csharp theme={null}
IFileAdapter GetNextImageFile();
```

<div id="visual-basic-net">
  ### Visual Basic .NET
</div>

```vb theme={null}
Function GetNextImageFile() As IFileAdapter
```

<div id="parameters">
  ## Parameter
</div>

Result

\[out, retval] Ein Zeiger auf eine [IFileAdapter](/de/fine-reader/engine/api-reference/batch-processor/ifileadapter)\*-Zeigervariable, über die auf die nächste Bilddatei in der Warteschlange zugegriffen werden kann.

<div id="return-values">
  ## Rückgabewerte
</div>

\[Nur C++] Wenn diese Methode einen anderen Wert als S\_OK zurückgibt, bedeutet dies, dass auf der Clientseite ein Fehler aufgetreten ist.

<div id="remarks">
  ## Hinweise
</div>

* Die Implementierung des Clients für diese Methode muss sicherstellen, dass alle innerhalb der Methode auftretenden Ausnahmen abgefangen und behandelt werden und keine Ausnahme die Methode nach außen verlässt. Eine außerhalb der Methode propagierte Ausnahme kann zu unvorhersehbaren Ergebnissen führen (z. B. zur Beendigung des Programms).
* Wenn Ihre Lizenz das Modul [Öffnen von Office-Formaten](/de/fine-reader/engine/licensing/modules#officeformatsopening) umfasst, können Sie diese Methode auch verwenden, um digitale Dokumente in [unterstützten Formaten](/de/fine-reader/engine/specifications/supported-digital-document-input-formats) zu öffnen.

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

<Accordion title="C#-Code">
  ```csharp theme={null}
  // Beispiel für die Implementierung einer benutzerdefinierten Bildquelle, die eine Warteschlange von Bilddateien verwaltet
  public class ImageSourceCallback : FREngine.IImageSource
  {
     public ImageSourceCallback( string imageFilesDirectory )
     {
         imageFiles = ImageSourceHelper.LoadFilesNames( imageFilesDirectory );
         nextFileIndex = 0;
     }
     public bool IsEmpty()
     {
         return nextFileIndex >= imageFiles.Length;
     }
     public FREngine.IFileAdapter GetNextImageFile()
     {
         if( !IsEmpty() ) {
             return new FileAdapterCallback( imageFiles[nextFileIndex++] );
         }
         return null;
     }
     public FREngine.IImageDocument GetNextImageDocument()
     {
         ...
     }
     private string[] imageFiles;
     private int nextFileIndex;
  }
  public class FileAdapterCallback : FREngine.IFileAdapter
  {
      ...
  }
  public class ImageSourceHelper
  {
      ...
  }
  ```
</Accordion>

<div id="see-also">
  ## Siehe auch
</div>

[IImageSource](/de/fine-reader/engine/api-reference/batch-processor/iimagesource)

[GetNextImageDocument](/de/fine-reader/engine/api-reference/batch-processor/iimagesource/getnextimagedocument-method)

[IsEmpty](/de/fine-reader/engine/api-reference/batch-processor/iimagesource/isempty-method)

[IFileAdapter](/de/fine-reader/engine/api-reference/batch-processor/ifileadapter)
