#include
void ECSINO_command( BSTR cmd )
{
const GUID CLSID_ECSINO = {0x8A3D3492, 0x5E6A, 0x4FAA,{ 0xBF, 0x81, 0x7A, 0xB7, 0x16, 0x19, 0x63, 0x21} };
HRESULT hr;
IDispatch* pIDispatch ;
DISPID dispid ;
OLECHAR* func = L"command";
DISPPARAMS funcparams ;
VARIANTARG vcmd ;
vcmd.vt = VT_BSTR;
vcmd.bstrVal = cmd;
funcparams.rgvarg = &vcmd;
funcparams.cArgs = 1;
funcparams.cNamedArgs = 0;
hr = ::CoInitialize( NULL );
if( FAILED( hr ) ) return ;
hr = ::CoCreateInstance( CLSID_VAVAA, NULL, CLSCTX_INPROC_SERVER, IID_IDispatch, (void**)&pIDispatch ) ;
if( FAILED( hr ) ) return ;
hr = pIDispatch->GetIDsOfNames(IID_NULL, &func, 1, LOCALE_SYSTEM_DEFAULT, &dispid ) ;
// if( FAILED( hr ) ) return ;
hr = pIDispatch->Invoke(dispid, IID_NULL, LOCALE_SYSTEM_DEFAULT, DISPATCH_METHOD, &funcparams, NULL, NULL, NULL) ;
pIDispatch -> Release();
}
调用这个函数的例程: ( 呼叫ECSINO : 83381234567 )void ECSINO_command( BSTR cmd )
{
const GUID CLSID_ECSINO = {0x8A3D3492, 0x5E6A, 0x4FAA,{ 0xBF, 0x81, 0x7A, 0xB7, 0x16, 0x19, 0x63, 0x21} };
HRESULT hr;
IDispatch* pIDispatch ;
DISPID dispid ;
OLECHAR* func = L"command";
DISPPARAMS funcparams ;
VARIANTARG vcmd ;
vcmd.vt = VT_BSTR;
vcmd.bstrVal = cmd;
funcparams.rgvarg = &vcmd;
funcparams.cArgs = 1;
funcparams.cNamedArgs = 0;
hr = ::CoInitialize( NULL );
if( FAILED( hr ) ) return ;
hr = ::CoCreateInstance( CLSID_VAVAA, NULL, CLSCTX_INPROC_SERVER, IID_IDispatch, (void**)&pIDispatch ) ;
if( FAILED( hr ) ) return ;
hr = pIDispatch->GetIDsOfNames(IID_NULL, &func, 1, LOCALE_SYSTEM_DEFAULT, &dispid ) ;
// if( FAILED( hr ) ) return ;
hr = pIDispatch->Invoke(dispid, IID_NULL, LOCALE_SYSTEM_DEFAULT, DISPATCH_METHOD, &funcparams, NULL, NULL, NULL) ;
pIDispatch -> Release();
}
BSTR cmd( L"dial?83381234567" );
ECSINO_command( cmd ) ;



