PASSSTRUCT-Struktur
Die PASSSTRUCT-Struktur ist wie folgt definiert:
Syntax
typedef struct tagPassParm {
WORD parm_length;
WORD exit_code;
WORD in_length;
LPBYTE in_addr;
WORD out_length;
LPBYTE out_addr;
WORD trns_id;
WORD in_page;
WORD out_page;
WORD option;
} PASSSTRUCT;
Member
parm_length
Angegebener Parameter. Die Länge der übergebenen Struktur, normalerweise auf 24 festgelegt. Wenn der Optionsmember nicht benötigt oder verwendet wird, kann dieser Parameter auf 22 festgelegt werden.
exit_code
Der angegebene und zurückgegebene Parameter. Beim Eintrag muss dieses Element auf 0 festgelegt werden. Bei der Rückgabe gibt dieses Element das Beenden status an. Die gesetzlichen Werte für zurückgegebene exit_code Werte sind wie folgt:
0
Normaler Exitcode, der angibt, dass die Funktion erfolgreich abgeschlossen wurde.
1
Die angeforderte Konvertierung wird nicht unterstützt.
12
Das feld exit_code wurde nicht ordnungsgemäß auf null initialisiert.
128
Das letzte Zeichen in der Quelleingabezeichenfolge war ein DBCS-Leadbyte.
256
Die Konvertierung konnte nicht erfolgreich abgeschlossen werden, da die Länge der resultierenden konvertierten Zielzeichenfolge 65535 Bytes überschreitet.
257
Beim Versuch, eine der TrnsDTx.dll Dateien zu laden und zu initialisieren, ist ein Fehler aufgetreten.
in_length
Angegebener Parameter. Gibt die Länge der Eingabequellzeichenfolge in Bytes an.
in_addr
Angegebener Parameter. Ein Zeiger auf den Puffer, der die zu konvertierende Quellzeichenfolge enthält.
out_length
Der angegebene und zurückgegebene Parameter. Gibt die maximale Verfügbare Länge für die übersetzte Ausgabezeichenfolge in Bytes an. Bei der Rückgabe wird dieser Member auf die Länge der konvertierten Ausgabezeichenfolge bei Erfolg oder auf die erforderliche Ausgabepufferlänge festgelegt, wenn der Puffer zu klein war.
out_addr
Angegebener Parameter. Ein Zeiger auf den Puffer, der die Ausgabezielzeichenfolge nach der Konvertierung enthält.
trns_id
Angegebener Parameter. Der Konvertierungsbezeichner, der immer 0 ist.
in_page
Angegebener Parameter. Gibt die Codepage der eingehenden Quellzeichenfolge an.
out_page
Angegebener Parameter. Gibt die Codepage der übersetzten Ausgabezeichenfolge an.
Option
Parameter angegeben und zurückgegeben, wenn parm_length auf 24 festgelegt wurde. Als bereitgestellter Parameter gibt dies eine Reihe von Optionen an, die auf den Übersetzungsprozess angewendet werden können. Mögliche Werte für diese Optionen sind wie folgt:
Bits 15-9
Reserviert.
Bit 8
Fügen Sie den konvertierten Ausgabezeichenfolgen shift out (SO)/shift in Bytes (SI) hinzu.
Bits 3-7
Reserviert.
Bit 2
Wenn dieses Bit festgelegt ist, konvertieren Sie die Eingabezeichenfolge mithilfe der von IBM angegebenen 1-Byte-Codetabelle. Diese Option ist nur gültig, wenn sie von der Codepage 932 in eine der folgenden Codepages konvertiert wird: 037, 290, 930 oder 931.
Wenn dieses Bit 0 ist, konvertieren Sie die Eingabequellzeichenfolge mithilfe der Konvertierungstabelle, die mit dem SYSCTBL-Hilfsprogramm erstellt wird.
Verwenden Sie bei Doppelbytezeichen immer die Vom SYSCTBL-Hilfsprogramm erstellte Konvertierungstabelle.
Die SYSCTBL.EXE-Datei ist ein Hilfsprogramm, das im Host Integration Server enthalten ist und ein Tool bereitstellt, mit dem benutzerdefinierte Konvertierungstabellen für die Verwendung mit der TrnsDT-Funktion erstellt werden können.
Bit 1
Wenn dieses Bit festgelegt ist, gibt dies an, dass die Eingabequellzeichenfolge mit einem 2-Byte-Zeichen beginnt. Im Allgemeinen enthalten die Hostdaten immer SO/SI-Steuerelementzeichen in Paaren, aber beim Konvertieren eines Teils von gemischten Datenzeichenfolgen muss die Konvertierung von einem Doppelbytezeichen ohne das SO-Steuerelementzeichen gestartet werden. In diesem Fall verfügen die Daten selbst nicht über ausreichende Informationen, um zu bestimmen, ob sie Double-Byte sind oder nicht, daher muss Bit 1 festgelegt werden.
Bit 0
Wenn dieses Bit festgelegt ist, gibt dies an, dass die Eingabequellzeichenfolge SO/SI-Steuerzeichen enthält. Bit 8 und Bit 0 sollten wie folgt festgelegt werden:
Konvertierung von PC zu Host Bit 8=1, Bit 0 =0 Konvertierung von Host zu PC Bit 8=0, Bit 0=1
Bei der Rückgabe wird die Option auf 4 festgelegt, wenn das letzte Zeichen ein Doppelbytezeichen war.