Tcl tcom : Type mismatch error when passing [in] integer pointer parameters



I use tcom 3.9 and ActiveTcl 8.5.0 (that by the way does not include
the tcom package even if it says so). I want to call a method which
Tcl specification obtained with "[::tcom::info interface $WinIdea]
methods" is :

29 VOID ProfilerGetInfo {{in {I4 *} iFlags} {in {I4 *} iNumExecAreas}
{in {I4 *} iNumDataAreas} {in {I2 *} iSingleDataWidth}}

Here is my code :

package require tcom
set WinIdea [::tcom::ref createobject "WinIdeaAuto.WinIdeaAutoSvr"]
$WinIdea Connect

set int1 [expr 1+1]
set int2 [expr 2+1]
set int3 [expr 3+1]
set int4 [expr 4+1]
$WinIdea ProfilerGetInfo int1 int2 int3 int4

The call to the ProfilerGetInfo method throws an exception :

0x80020005 {Type mismatch.}
while executing
"$WinIdea ProfilerGetInfo int1 int2 int3 int4"
(file "MonTest.tcl" line 104)

What am I doing wrong? Aren't the parameters four pointers to integer?
Although they are marked as "in" parameters, their description in the
documentation tells me they are used to retrieve information from the
application.

Thank you for any help.
.



Relevant Pages