69 lines
1.9 KiB
C++
69 lines
1.9 KiB
C++
#include "stdafx.h"
|
|
#include "TestApp.h"
|
|
|
|
#pragma comment(lib, "lib\\uci.lib")
|
|
|
|
using namespace uci;
|
|
|
|
TestApp::TestApp() : m_session(INVALID_SESSION){}
|
|
|
|
|
|
TestApp::~TestApp() {}
|
|
|
|
u_status TestApp::Run(const TCHAR* _addr) {
|
|
return 0;
|
|
}
|
|
|
|
int TestApp::HandleResult(const TCHAR* _msg, int _r) {
|
|
if (UCISUCCESS(_r)) {
|
|
_tprintf(_T("%s: OK, r = %d;\n"), _msg, _r);
|
|
} else {
|
|
_tprintf(_T("%s: Error, r = %d; msg = %s\n"), _msg, _r, uci_GetLastError());
|
|
}
|
|
return _r;
|
|
}
|
|
|
|
u_status TestApp::Open(const u_tchar* _addr, int _timeout) {
|
|
uci_SetAttribute(INVALID_SESSION, _T("lang:zh-Hans;"), nullptr, 0);
|
|
return uci_Open(_addr, &m_session, _timeout);
|
|
}
|
|
|
|
u_status TestApp::Write(int _timeout, const void* _data, unsigned int _data_len, const TCHAR *format, ...) {
|
|
m_dwTime = GetTickCount();
|
|
|
|
CString msg;
|
|
va_list argptr;
|
|
va_start(argptr, format);
|
|
msg.FormatV(format, argptr);
|
|
|
|
auto r = uci::uci_WriteX(m_session, msg, _timeout, (const byte*)_data, _data_len);
|
|
// _tprintf(_T("Write [%s], r = %s, %s, use time = %d ms\n"), msg, r,
|
|
// UCISUCCESS(r) ? _T("OK") : _T("Error"), uci_GetLastError(), GetTickCount() - m_dwTime);
|
|
// ASSERT(r >= 0);
|
|
va_end(argptr);
|
|
return r;
|
|
}
|
|
|
|
u_status TestApp::Read(u_cstring _msg, u_uint32 _timeout, u_byte* _data, u_size _dataLen) {
|
|
m_dwTime = GetTickCount();
|
|
auto r = uci::uci_ReadX(m_session, _msg, _timeout, _data, _dataLen);
|
|
// _tprintf(_T("Read %s, r = %s, time = %d\n"), _msg, uci_GetLastError(), GetTickCount() - m_dwTime);
|
|
// ASSERT(r >= 0);
|
|
return r;
|
|
}
|
|
|
|
u_status TestApp::Read(u_uint32 _timeout, u_byte* _data, u_size _dataLen, u_cstring format, ...) {
|
|
CString msg;
|
|
va_list argptr;
|
|
va_start(argptr, format);
|
|
msg.FormatV(format, argptr);
|
|
|
|
m_dwTime = GetTickCount();
|
|
auto r = uci_ReadX(m_session, msg, _timeout, _data, _dataLen);
|
|
// _tprintf(_T("Read %s, r = %s, time = %d\n"), msg, uci_GetLastError(), GetTickCount() - m_dwTime);
|
|
// ASSERT(r >= 0);
|
|
|
|
va_end(argptr);
|
|
return r;
|
|
}
|