|
By default OS/400 passes _all_ Parameters by reference
i.e. as pointers. So the way you called the API ended up
in passing pointers to pointers ;-). Try :
D PrintTransform PR extproc('QwpzHostPrintTransform')
D ProcOptP * value
. . .
D APIError 272 value options( *NoPass )
HTH Rolf
p.s. there's a redbook dealing a lot with APIs :
http://www.redbooks.ibm.com
Who Knew You Could Do That with RPG IV?
A Sorcerer's Guide to System Access and More
---------------------------
Dipl.Inf.(FH) Rolf P Mittag
Leipziger Str. 50
D-69214 Eppelheim
Fon: +49 (6221) 76 78 60
Fax: +49 (6221) 76 80 26
eMl: rm@r-m-e-d-v.de
Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte
Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und
vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte
Weitergabe dieser Mail ist nicht gestattet.
This e-mail may contain confidential and/or privileged information. If you
are not the intended recipient (or have received this e-mail in error)
please notify the sender immediately and destroy this e-mail. Any
unauthorised copying, disclosure or distribution of the material in this
e-mail is strictly forbidden.
----- Original Message -----
From: <B.Quindt@zapf-bayreuth.de>
To: <RPG400-L@midrange.com>
Sent: Tuesday, March 13, 2001 5:07 PM
Subject: RPGIV - Pointer Parameter API QwpzHostPrintTransform
> Hallo,
>
> we have a example Program witten in C in this example the API
> QwpzHostPrintTransform was called.
> All the Parameters passed from C Programm were Pointers.
>
> We want to use the API in RPGIV Programm, is there a way to pass pointers
> in the same way like the
> C Programm does ?
>
> Example C Code
>
> QwpzHostPrintTransform( procoptP,
> (Qwpz_HPT_Opt_SpecIn_t *)(&OPT_Spec_In),
> LOptInP,
> SplDataP,
> SplDataLP,
> (OptOut_t *)(&OPT_Spec_Out),
> LOptOutP,
> LOptOutAP,
> TranDataP,
> TranDataLP,
> TranDataAP,
> (char*)(&errcode) );
>
> We tried to define the following in RPGIV but it doesn't work.
>
> D PrintTransform PR extproc('QwpzHostPrintTransform')
> D ProcOptP *
> D OptinP *
> D LoptInP *
> D SplDataP *
> D SplDataLP *
> D OptOutP *
> D LoptOutP *
> D LoptOutAP *
> D TranDataP *
> D TranDataLP *
> D TranDataAP *
> D APIError 272 options( *NoPass )
>
>
>
> Thank you
>
>
>
>
> +---
> | This is the RPG/400 Mailing List!
> | To submit a new message, send your mail to RPG400-L@midrange.com.
> | To subscribe to this list send email to RPG400-L-SUB@midrange.com.
> | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
> | Questions should be directed to the list owner/operator:
david@midrange.com
> +---
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.