|
@@ -16,12 +16,12 @@ m_hThreadReport(NULL)
|
|
{
|
|
{
|
|
Global::Init();
|
|
Global::Init();
|
|
Global::GetMacAddress();
|
|
Global::GetMacAddress();
|
|
- m_curl.Initialize();
|
|
|
|
}
|
|
}
|
|
|
|
|
|
CSDK::~CSDK(void)
|
|
CSDK::~CSDK(void)
|
|
{
|
|
{
|
|
-
|
|
|
|
|
|
+ EndDowloadThread();
|
|
|
|
+ EndReportThread();
|
|
}
|
|
}
|
|
|
|
|
|
int CSDK::QueryMidInfo(std::string order)
|
|
int CSDK::QueryMidInfo(std::string order)
|
|
@@ -249,7 +249,9 @@ int CSDK::GetMidInfo(std::string order, STMid &mid)
|
|
content.append(order);
|
|
content.append(order);
|
|
//content.append("&mac=");
|
|
//content.append("&mac=");
|
|
//content.append(Global::g_strMacs);
|
|
//content.append(Global::g_strMacs);
|
|
- if ( m_curl.Posts(url, content, result) == CURLE_OK)
|
|
|
|
|
|
+ CCurlClient curl;
|
|
|
|
+ curl.Initialize();
|
|
|
|
+ if ( curl.Posts(url, content, result) == CURLE_OK)
|
|
{
|
|
{
|
|
// ½âÎöjson×Ö·û´®;
|
|
// ½âÎöjson×Ö·û´®;
|
|
cJSON *pJson = cJSON_Parse(result.c_str());
|
|
cJSON *pJson = cJSON_Parse(result.c_str());
|
|
@@ -469,6 +471,25 @@ DWORD CSDK::ThreadDownload(LPVOID lpParam)
|
|
return 0L;
|
|
return 0L;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+void CSDK::EndDowloadThread()
|
|
|
|
+{
|
|
|
|
+ if ( m_hDownloadEvent )
|
|
|
|
+ {
|
|
|
|
+ SetEvent(m_hDownloadEvent);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if ( m_hThreadDownload)
|
|
|
|
+ {
|
|
|
|
+ WaitForSingleObject(m_hThreadDownload, INFINITE);
|
|
|
|
+ CloseHandle(m_hThreadDownload);
|
|
|
|
+ m_hThreadDownload = NULL;
|
|
|
|
+
|
|
|
|
+ if ( m_hDownloadEvent )
|
|
|
|
+ CloseHandle(m_hDownloadEvent);
|
|
|
|
+ m_hDownloadEvent = NULL;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
DWORD CSDK::ThreadReport(LPVOID lpParam)
|
|
DWORD CSDK::ThreadReport(LPVOID lpParam)
|
|
{
|
|
{
|
|
CSDK *that = (CSDK*)lpParam;
|
|
CSDK *that = (CSDK*)lpParam;
|
|
@@ -479,4 +500,23 @@ DWORD CSDK::ThreadReport(LPVOID lpParam)
|
|
} while (WaitForSingleObject(that->m_hReportEvent, 3000) == WAIT_TIMEOUT );
|
|
} while (WaitForSingleObject(that->m_hReportEvent, 3000) == WAIT_TIMEOUT );
|
|
|
|
|
|
return 0L;
|
|
return 0L;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+void CSDK::EndReportThread()
|
|
|
|
+{
|
|
|
|
+ if ( m_hReportEvent )
|
|
|
|
+ {
|
|
|
|
+ SetEvent(m_hReportEvent);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if ( m_hThreadReport)
|
|
|
|
+ {
|
|
|
|
+ WaitForSingleObject(m_hThreadReport, INFINITE);
|
|
|
|
+ CloseHandle(m_hThreadReport);
|
|
|
|
+ m_hThreadReport = NULL;
|
|
|
|
+
|
|
|
|
+ if ( m_hReportEvent )
|
|
|
|
+ CloseHandle(m_hReportEvent);
|
|
|
|
+ m_hReportEvent = NULL;
|
|
|
|
+ }
|
|
}
|
|
}
|