Como chamar função COM de PHP com OLE_COLOR como um argumento?
Pergunta
Eu estou tentando chamar um objeto COM de PHP usando a extensão de interoperabilidade. Uma função requer um OLE_COLOR como um argumento? Existe alguma maneira de passar este tipo de valor a partir de PHP?
Eu tentei passar um simples valor inteiro sem sucesso.
$this->oBuilder->Font->Color = 255;
Solução
PHP pode definir as constantes o COM expõe automático.
set_ini ( ' com.autoregister-typelib ', true);
ou à mão
com_load_typelib ($ typelib_name);
Mas se o OLE_COLOR é um objeto em vez de um inteiro, string ou outro
primitiva
usando constantes (ou inteiros) não vai funcionar.
$Color = new COM('ColorClass');
$Color->set_color_function($red, $green, $blue);
Ou algo vontade similar.
Outras dicas
Quando eu chamei funções COM de PHP, eu só passou por eles na chamada. Então, meu código antigo tem:
$myComObject = new COM("MY_COM_OBJECT"); $myComObject->Myfunction( myVar1, myVar2, 'my string var');
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow