Teledyne LeCroy USB Analyzer Automation Manual User Manual

Page 12

background image

Teledyne LeCroy Automation API Reference Manual for USBTracer, USB Advisor, and Voyager USB Protocol
Suite

12

Example


WSH:

CurrentDir = Left(WScript.ScriptFullName, InstrRev(WScript.ScriptFullName, "\"))
Set Analyzer = WScript.CreateObject("CATC.USBTracer")
Set Trace = Analyzer.OpenFile (CurrentDir & "Input\errors.usb")


C++:

HRESULT hr;
IUsbAnalyzer* poUsbAnalyzer;

// create UsbAnalyzer object
if ( FAILED( CoCreateInstance(

CLSID_UsbAdvisor,
NULL, CLSCTX_SERVER,
IID_IUsbAnalyzer,
(LPVOID *)&poUsbAnalyzer ) )

return;


// open trace file
IDispatch* trace;
try
{

trace = poUsbAnalyzer->OpenFile( m_szRecFileName );

}
catch ( _com_error& er)
{

if (er.Description().length() > 0)
::MessageBox( NULL, er.Description(), _T("UsbAnalyzer client"), MB_OK );
else
::MessageBox( NULL, er.ErrorMessage(), _T("UsbAnalyzer client"), MB_OK );
return 1;

}


// query for VTBL interface
IUsbTrace* usb_trace;

hr = trace->QueryInterface( IID_IUsbTrace, (LPVOID *)&usb_trace );
trace->Release();

if( FAILED(hr) )

return;