Req #41286 [Com]: Variant VT_ARRAY of VT_UI1
Edit report at https://bugs.php.net/bug.php?id=41286&edit=1
ID: 41286
Comment by: muithimwema at gmail dot com
Reported by: milman at gmx dot de
Summary: Variant VT_ARRAY of VT_UI1
Status: Open
Type: Feature/Change Request
Package: COM related
PHP Version: 5.2.2
Block user comment: N
Private report: N
New Comment:
I am having the same error. See my post on Stack Overflow here http://stackoverflow.com/questions/42189245/how-to-pass-an-array-of-bytes-reference-to-a-com-object-method
Previous Comments:
------------------------------------------------------------------------
[2009-03-26 18:53:57] kaisellgren at gmail dot com
I am experiencing same problems.
$rng = new DOTNET("mscorlib",
"System.Security.Cryptography.RNGCryptoServiceProvider");
$arr = array(0);
$v = new VARIANT($arr,VT_ARRAY | VT_UI1);
$rng->GetBytes($v);
unset($rng);
It throws an error: Fatal error: Uncaught exception 'com_exception' with message
'Variant type conversion failed: Type mismatch.
------------------------------------------------------------------------
[2007-05-04 17:12:28] milman at gmx dot de
Description:
------------
for calling navigate2 you need to pass array of byte.
that is not possible.
Reproduce code:
---------------
<?php
$ie = new COM("InternetExplorer.Application");
$ie->Visible = true;
$ie->Height = 500 ;
$ie->Width = 700 ;
$post = array (ord('p'),ord('='),ord('1')) ;
$v = new VARIANT($post, VT_ARRAY|VT_UI1);
//postdata need to be array of byte
$ie->Navigate2("http://host/web/echo_request.php",0,'',$v)
;
?>
Expected result:
----------------
posting data to web-server
Actual result:
--------------
com_exception
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=41286&edit=1
Thread (5 messages)