LlEnumGetEntry

Syntax:

HLISTPOS LlEnumGetEntry(HLLJOB hJob, HLISTPOS hPos, LPTSTR pszNameBuf, UINT nNameBufsize, LPTSTR pszContBuf, UINT nContBufSize, _LPHANDLE pHandle, _LPINT pType);

Aufgabe:

Liefert den Inhalt und den Namen einer Variable bzw. eines Feldes.

Parameter:

hJob: List & Label-Job-Handle

hPos: Das Handle der momentanen Variable/des momentanen Felds

pszNameBuf, nNameBufsize: beschreiben einen Puffer, in dem der Variablen/Feldbezeichner gespeichert werden soll

pszContBuf, nContBufSize: beschreiben einen Puffer, in dem der Inhalt gespeichert werden soll. pszContBuf darf NULL sein.

pHandle: Zeiger auf ein HANDLE, in dem ein etwaiges Handle gespeichert werden soll. Darf NULL sein (siehe LlDefineVariableExtHandle() und LlDefineFieldExtHandle()).

pType: Zeiger auf INT, in dem der Typ gespeichert werden soll (LL_­TEXT, ...). Darf NULL sein.

Rückgabewert:

Fehlercode

Hinweise:

Während der Iteration darf nicht LlDefineVariableStart() oder LlDefineFieldStart() aufgerufen werden!

Über die Enumeratoren kann man die Variablen- und Feldliste durchlaufen und die Definitionen der vorhandenen Variablen und Felder samt Typen und Inhalten abfragen.

Folgendes Beispiel durchläuft die Variablenliste und gibt alle Variablen aus (LL_­TYPEMASK ist die Addition aller möglichen Variablentypen):

HLISTPOS hPos = LlEnumGetFirstVar(hJob, LL_­TYPEMASK);
while (hPos != NULL)
{
   TCHAR szName[64+1];
   TCHAR szContents[256+1];
   LlEnumGetEntry(hJob, hPos, szName, sizeof(szName), szContents, sizeof(szContents),
            NULL, NULL);
   printf("%s - %s\n",szName,szContents);
   hPos = LlEnumGetNextEntry(hJob, hPos, LL_­TYPEMASK);
}

Bezüglich des Rückgabewerts im Puffer siehe Kapitel Wichtiges zu den Funktionsparametern.

Siehe auch:

LlEnumGetFirstVar, LlEnumGetFirstField, LlEnumGetNextEntry