Chris Schippers
New Member
I have the following api call I have to make, but I am not sure how to translate it to Progress.
BOOL WINAPI SSubmitJob (
TCHAR *Host, // pointer to host
TCHAR *Port, // pointer to port
TCHAR *JobID, // pointer to Job Identifier BOOL Sync, // wait for request to finish
TCHAR **Parameters, // parameter list
TCHAR *Result, // buffer for result text int Length, // size of buffer
void (*Progress) (TCHAR *) // call-back for progress messages
);
Everything works fine as long as I don't send any parameters. As soon as I put a value in the parameters, Progress crashes.
My question, how should I define and pass the TCHAR **Parameters?
The manual say's the following:
Pointer to a null-terminated list of string pointers. Every string pointer in this list points to a parameter that is passed with the job to ITP/DS.
Here is how the program I wrote looks like..
DEF VAR vRESULT AS CHAR.
DEF VAR vLENGTH AS INT.
DEF VAR vPROG AS CHAR.
ASSIGN vRESULT = FILL(" ",256)
vPROG = FILL(" ",256).
PROCEDURE SSubmitJobA EXTERNAL "c:\sock_api.dll":
DEF INPUT PARAMETER iHOST AS CHAR.
DEF INPUT PARAMETER iPORT AS CHAR.
DEF INPUT PARAMETER iJOB AS CHAR.
DEF INPUT PARAMETER iSYNC AS LONG.
DEF INPUT PARAMETER iPARAM AS CHAR.
DEF OUTPUT PARAMETER oRESULT AS CHAR.
DEF OUTPUT PARAMETER oLENGTH AS LONG.
DEF OUTPUT PARAMETER oPROG AS CHAR.
END PROCEDURE.
RUN SSubmitJobA
("s210", /* Host */
"3333", /* Port */
"", /* JobID */
0, /* Sync */
"c:\ccs\chris.xml", /* Parameter */
OUTPUT vRESULT, /* Result */
OUTPUT vLENGTH, /* Length */
OUTPUT vPROG). /* Prog */
BOOL WINAPI SSubmitJob (
TCHAR *Host, // pointer to host
TCHAR *Port, // pointer to port
TCHAR *JobID, // pointer to Job Identifier BOOL Sync, // wait for request to finish
TCHAR **Parameters, // parameter list
TCHAR *Result, // buffer for result text int Length, // size of buffer
void (*Progress) (TCHAR *) // call-back for progress messages
);
Everything works fine as long as I don't send any parameters. As soon as I put a value in the parameters, Progress crashes.
My question, how should I define and pass the TCHAR **Parameters?
The manual say's the following:
Pointer to a null-terminated list of string pointers. Every string pointer in this list points to a parameter that is passed with the job to ITP/DS.
Here is how the program I wrote looks like..
DEF VAR vRESULT AS CHAR.
DEF VAR vLENGTH AS INT.
DEF VAR vPROG AS CHAR.
ASSIGN vRESULT = FILL(" ",256)
vPROG = FILL(" ",256).
PROCEDURE SSubmitJobA EXTERNAL "c:\sock_api.dll":
DEF INPUT PARAMETER iHOST AS CHAR.
DEF INPUT PARAMETER iPORT AS CHAR.
DEF INPUT PARAMETER iJOB AS CHAR.
DEF INPUT PARAMETER iSYNC AS LONG.
DEF INPUT PARAMETER iPARAM AS CHAR.
DEF OUTPUT PARAMETER oRESULT AS CHAR.
DEF OUTPUT PARAMETER oLENGTH AS LONG.
DEF OUTPUT PARAMETER oPROG AS CHAR.
END PROCEDURE.
RUN SSubmitJobA
("s210", /* Host */
"3333", /* Port */
"", /* JobID */
0, /* Sync */
"c:\ccs\chris.xml", /* Parameter */
OUTPUT vRESULT, /* Result */
OUTPUT vLENGTH, /* Length */
OUTPUT vPROG). /* Prog */