У меня есть COM-объект, который содержит функцию:
[id(1)] HRESULT tst1([out] LONG * l, [out, retval] LONG * e );
Создайте этот объект и используйте в PHP:
$f = new COM('App.MyObj');
$f->tst1($i);
Получил ошибку:
( ! ) Fatal error: Uncaught exception 'com_exception' with message
( ! ) com_exception: Parameter 0: Type mismatch.
Как мне передать параметр в моем случае?
Судя по всему, вам не нужно передавать какой-либо параметр в метод tst1()
, поскольку он использует только out
параметры.
Таким образом, вы должны перехватить результат этого метода внутри переменной объекта и затем получить доступ к свойствам этого объекта:
$f = new COM('App.MyObj');
$result = $f->tst1();
print_r($result); // find out the $result object structure
Других решений пока нет …