|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2001-08-23 11:02 UTC] bin dot yang at daytonrcs dot com
Here is the PHP code.
$bp = new COM("AG2.Beepoj") or die("Unable to instanciate");
$bp-> beeeep(101,"\x0\x0\xff");
unset($bp);
The other end is a COM object, the beeeep method defined as
STDMETHODIMP Cbeepoj::Beeeep(int iDuration, BSTR b_str)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState())
// TODO: Add your implementation code here
::Beep(523,iDuration);
if(wcslen(b_str)!=0) AfxMessageBox((CString)b_str);
else AfxMessageBox("null string.");
return S_OK;
}
If I use $bp-> beeeep(101,"111111"); I will get 111111 displayed in a message box. However, If the input is
$bp-> beeeep(101,"\x0\x0\xff"); The COM will say it is a
null string.
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 19:00:01 2025 UTC |
In conversion.c: ...... case IS_STRING: var_arg->vt = VT_BSTR; unicode_str = php_char_to_OLECHAR(pval_arg->value.str.val, pval_arg->value.str.len, codepage); var_arg->bstrVal = SysAllocString(unicode_str); efree(unicode_str); ...... MSN document: BSTR SysAllocString(OLECHAR FAR* sz); Parameter : sz: a zero terminated string to copy. The sz parameter must be a unicode string in 32-bit applications, and an ANSI string in 16-bit applications. ...... What I did in my c++ file to send a binary string in c++ ...... char tmpbuf[] = {0x00,0x20,.....0x11}; BSTR SEF = SysAllocStringByteLen(NULL,sizeof(tmpbuf)); memcpy(SEF,tmpbuf, sizeof(tmpbuf)); ...... I can receive the binary string on the other end.