Example #1
0
CSendUDP::CSendUDP(void)
{
    m_hSendThread = NULL;
    m_hSendStopEvent = _CreateEvent(FALSE, FALSE, NULL);

	m_hCriticalEvent = _CreateEvent(FALSE, TRUE, NULL);

	WSAData wsaData;
	WSAStartup(MAKEWORD(2,0), &wsaData);

	WCHAR strExePath[512] = L"";
	GetModuleFileName(NULL, strExePath, 512);

	WCHAR szPath[_MAX_PATH];	// パス
	WCHAR szFile[_MAX_PATH];	// ファイル
	WCHAR szDrive[_MAX_DRIVE];
	WCHAR szDir[_MAX_DIR];
	WCHAR szFname[_MAX_FNAME];
	WCHAR szExt[_MAX_EXT];
	_tsplitpath_s( strExePath, szDrive, _MAX_DRIVE, szDir, _MAX_DIR, szFname, _MAX_FNAME, szExt, _MAX_EXT );
	_tmakepath_s(  szPath, _MAX_PATH, szDrive, szDir, NULL, NULL );
	_tmakepath_s(  szFile, _MAX_PATH, L"", L"", szFname, szExt );

	Format(m_strIniPath, L"%s%s.ini",szPath,szFname);

}
Example #2
0
CNotifyManager::CNotifyManager(void)
{
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);
	this->lockNotify = _CreateEvent(FALSE, TRUE, NULL);

	this->notifyThread = NULL;
	this->notifyStopEvent = _CreateEvent(FALSE, FALSE, NULL);

	this->sendEvent = _CreateEvent(TRUE, TRUE, NULL);

}
Example #3
0
CWriteTSFile::CWriteTSFile(void)
{
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);
	this->buffLockEvent = _CreateEvent(FALSE, TRUE, NULL);

    this->outThread = NULL;
    this->outStopEvent = _CreateEvent(FALSE, FALSE, NULL);
	this->writeTotalSize = 0;
	this->maxBuffCount = -1;
	this->buffOverErr = FALSE;
}
Example #4
0
CWinHTTPUtil::CWinHTTPUtil(void)
{
	this->session = NULL;
	this->connect = NULL;
	this->request = NULL;

	this->useProxy = FALSE;
	this->asyncMode = FALSE;
	this->lastHost = L"";
	this->lastPort = 0;

    this->upThread = NULL;
    this->upStopEvent = _CreateEvent(FALSE, FALSE, NULL);
	this->writeCompEvent = _CreateEvent(FALSE, FALSE, NULL);
	this->responseCompEvent = _CreateEvent(FALSE, FALSE, NULL);
}
Example #5
0
CBatManager::CBatManager(void)
{
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);

	this->workFlag = FALSE;

	this->batWorkThread = NULL;
	this->batWorkStopEvent = _CreateEvent(FALSE, FALSE, NULL);

	this->lastSuspendMode = 0xFF;
	this->lastRebootFlag = 0xFF;

	this->notifyManager = NULL;

	ReloadSetting();
}
Example #6
0
CWritePlugInUtil::CWritePlugInUtil(void)
{
	module = NULL;

	this->id = 0;
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL );
}
Example #7
0
CBonCtrl::CBonCtrl(void)
{
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);
	this->buffLockEvent = _CreateEvent(FALSE, TRUE, NULL);

    this->recvThread = NULL;
    this->recvStopEvent = _CreateEvent(FALSE, FALSE, NULL);
    this->analyzeThread = NULL;
    this->analyzeStopEvent = _CreateEvent(FALSE, FALSE, NULL);

    this->chScanThread = NULL;
    this->chScanStopEvent = _CreateEvent(FALSE, FALSE, NULL);
	this->chSt_space = 0;
	this->chSt_ch = 0;
	this->chSt_chName = L"";
	this->chSt_chkNum = 0;
	this->chSt_totalNum = 0;
	this->chSt_err = ST_STOP;

	this->epgCapThread = NULL;
	this->epgCapStopEvent = _CreateEvent(FALSE, FALSE, NULL);
	this->BSBasic = TRUE;
	this->CS1Basic = TRUE;
	this->CS2Basic = TRUE;
	this->epgSt_err = ST_STOP;

	this->epgCapBackThread = NULL;
	this->epgCapBackStopEvent = _CreateEvent(FALSE, FALSE, NULL);
	this->enableLiveEpgCap = FALSE;
	this->enableRecEpgCap = FALSE;

	this->epgCapBackStartWaitSec = 30;
	this->tsBuffMaxCount = 5000;
	this->writeBuffMaxCount = -1;
}
Example #8
0
CTwitterMain::CTwitterMain(void)
{
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);
	this->authorizationUrl = NULL;
	this->useProxy = FALSE;
	this->chgProxy = TRUE;

    this->tweetThread = NULL;
    this->tweetStopEvent = _CreateEvent(FALSE, FALSE, NULL);
	this->tweetSetEvent = _CreateEvent(FALSE, FALSE, NULL);

	WCHAR filePath[512] = L"";
	GetModuleFileName(g_Instance, filePath, 512);
	this->moduleIniPath = filePath;
	this->moduleIniPath += L".ini";

	this->sendWaitSec = 5;
}
Example #9
0
CEpgDBManager::CEpgDBManager(void)
{
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);

    this->loadThread = NULL;
    this->loadStopEvent = _CreateEvent(FALSE, FALSE, NULL);

	wstring textPath;
	GetModuleFolderPath(textPath);
	textPath += L"\\ConvertText.txt";

	this->chgText.ParseReserveText(textPath.c_str() );

	::CoInitialize( NULL );
	HRESULT hr=regExp.CreateInstance(CLSID_RegExp);
	if(FAILED(hr)){
		regExp = NULL;
	}
}
Example #10
0
CTunerCtrl::CTunerCtrl(void)
{
	OSVERSIONINFO VerInfo;
	VerInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
	GetVersionEx( &VerInfo );

	if( VerInfo.dwMajorVersion == 5 && VerInfo.dwMinorVersion == 0 ){
		win2kFlag = TRUE;
	}else{
		win2kFlag = FALSE;
	}

	this->openWaitEvent = _CreateEvent(FALSE, TRUE, _T("Global\\EpgTimerSrv_OpenTuner_Event") );
}
Example #11
0
CPushVideoPin::CPushVideoPin(HRESULT *phr, CSource *pFilter)
	: CSourceStream(NAME("Push Source Video"), phr, pFilter, L"Video Out")
{
    AM_MEDIA_TYPE amTypeVideo;
    amTypeVideo.majortype = MEDIATYPE_Video;
    amTypeVideo.subtype = MEDIASUBTYPE_MPEG2_VIDEO;
    amTypeVideo.bFixedSizeSamples = TRUE;
    amTypeVideo.bTemporalCompression = 0;
    amTypeVideo.formattype = FORMAT_MPEG2Video;
    amTypeVideo.pUnk = NULL;
    amTypeVideo.cbFormat = 0;
    amTypeVideo.pbFormat = NULL;

	m_mt = amTypeVideo;

	this->buffLockEvent = _CreateEvent(FALSE, TRUE, NULL);
}
Example #12
0
CPushAudioPin::CPushAudioPin(HRESULT *phr, CSource *pFilter)
	: CSourceStream(NAME("Push Source Audio"), phr, pFilter, L"Audio Out")
{
    AM_MEDIA_TYPE amTypeAudio;
    amTypeAudio.majortype = MEDIATYPE_Audio;
	amTypeAudio.subtype = MEDIASUBTYPE_MPEG_ADTS_AAC;
    amTypeAudio.bFixedSizeSamples = TRUE;
    amTypeAudio.bTemporalCompression = 0;
    amTypeAudio.formattype = FORMAT_WaveFormatEx;
    amTypeAudio.pUnk = NULL;
    amTypeAudio.cbFormat = 0;
    amTypeAudio.pbFormat = NULL;

	m_mt = amTypeAudio;

	this->buffLockEvent = _CreateEvent(FALSE, TRUE, NULL);
}
Example #13
0
//チャンネル設定ファイルを保存する
BOOL CChSetUtil::SaveChSet(
	wstring chSet4FilePath,
	wstring chSet5FilePath
	)
{
	//接続待ち
	HANDLE waitEvent = _CreateEvent(FALSE, TRUE, CHSET_SAVE_EVENT_WAIT);
	if( waitEvent == NULL ){
		return FALSE;
	}
	if(WaitForSingleObject(waitEvent, 10000) == WAIT_TIMEOUT){
		CloseHandle(waitEvent);
		return FALSE;
	}

	BOOL ret = TRUE;
	if( this->chText4.SaveChText(chSet4FilePath.c_str()) == FALSE ){
		ret = FALSE;
	}

	//他で更新されてる可能性あるので再読み込み
	CParseChText5 chText5;
	chText5.ParseText(chSet5FilePath.c_str());
	//現在保持している情報を追加
	map<LONGLONG, CH_DATA5>::iterator itr;
	for( itr = this->chText5.chList.begin(); itr != this->chText5.chList.end(); itr++ ){
		chText5.AddCh(itr->second);
	}
	//保存
	if( chText5.SaveChText(chSet5FilePath.c_str()) == FALSE ){
		ret = FALSE;
	}
	//最新版を再読み込み
	this->chText5.ParseText(chSet5FilePath.c_str());

	SetEvent(waitEvent);
	CloseHandle(waitEvent);

	return ret;
}
Example #14
0
CEpgDataCap3Main::CEpgDataCap3Main(void)
{
    this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);

    decodeUtilClass.SetEpgDB(&(this->epgDBUtilClass));
}
Example #15
0
UINT WINAPI CHttpServer::ServerThread(LPVOID pParam)
{
	CHttpServer* pSys = (CHttpServer*)pParam;

	HANDLE hCurThread = GetCurrentThread();
	SetThreadPriority(hCurThread, pSys->m_iThreadPriority);

	SOCKET sock = NULL;
	SOCKET sock2 = NULL;
	struct sockaddr_in client;
	
	HANDLE hEventCmdWait = NULL;
	if( pSys->m_iCtrlCmdEventID != -1 ){
		wstring strCmdEvent;
		Format(strCmdEvent, L"%s%d", CMD2_CTRL_EVENT_WAIT, pSys->m_iCtrlCmdEventID);
		hEventCmdWait = _CreateEvent(FALSE, TRUE, strCmdEvent.c_str());
	}
	
	fd_set ready;
	struct timeval to;

	while(1){
		if( WaitForSingleObject( pSys->m_hStopEvent, 0 ) != WAIT_TIMEOUT ){
			//中止
			break;
		}

		to.tv_sec = 1;
		to.tv_usec = 0;
		FD_ZERO(&ready);
		FD_SET(pSys->m_sock, &ready);

		if( select(0, &ready, NULL, NULL, &to ) == SOCKET_ERROR ){
			break;
		}
		if( sock == NULL ){
			if ( FD_ISSET(pSys->m_sock, &ready) ){
				int len = sizeof(client);
				sock = accept(pSys->m_sock, (struct sockaddr *)&client, &len);
				if (sock == INVALID_SOCKET) {
					closesocket(pSys->m_sock);
					pSys->m_sock = NULL;
					break;
				}
			}
		}
		if( sock != NULL ){
			//ほかのサーバーで処理中?
			if( hEventCmdWait != NULL ){
				WaitForSingleObject(hEventCmdWait, INFINITE);
			}
			DWORD socketBuffSize = 1024*1024;
			setsockopt(sock, SOL_SOCKET, SO_SNDBUF, (const char*)&socketBuffSize, sizeof(socketBuffSize));
			setsockopt(sock, SOL_SOCKET, SO_SNDBUF, (const char*)&socketBuffSize, sizeof(socketBuffSize));
			
			to.tv_sec = 1;
			to.tv_usec = 0;
			FD_ZERO(&ready);
			FD_SET(sock, &ready);
			if( select(0, &ready, NULL, NULL, &to ) == SOCKET_ERROR ){
				shutdown(sock,SD_RECEIVE);
				sock = NULL;
				continue;
			}
			if ( FD_ISSET(sock, &ready) ){
				HTTP_STREAM recvData;
				HTTP_STREAM sendData;
				string httpHeader = "";
				BOOL chkLine = FALSE;
				BOOL chkBody = FALSE;
				DWORD readBody = 0;
				while(1){
					int offset = 0;
					int iRet = 1;
					char recvBuff[1025] = {0};
					iRet = recv(sock, recvBuff, 1024, 0);
					if( iRet == SOCKET_ERROR ){
						break;
					}else if( iRet == 0 ){
						break;
					}
					if( chkLine == TRUE ){
						chkLine = FALSE;
						if(recvBuff[0] == '\n'){
							httpHeader += "\n";
							chkBody = TRUE;
							offset=1;
							recvData.dataSize = pSys->ChkContentLength(httpHeader);
							if( recvData.dataSize > 0 ){
								recvData.data = new BYTE[recvData.dataSize];
							}
						}else if(recvBuff[0] == '\r' && recvBuff[1] == '\n' ){
							httpHeader += "\r\n";
							chkBody = TRUE;
							offset=2;
							recvData.dataSize = pSys->ChkContentLength(httpHeader);
							if( recvData.dataSize > 0 ){
								recvData.data = new BYTE[recvData.dataSize];
							}
						}
					}
					if( chkBody == FALSE ){
						for( int i=0; i<iRet; i++ ){
							if( recvBuff[i] == '\n'){
								if( i+2 < iRet ){
									if(recvBuff[i+1] == '\r' && recvBuff[i+2] == '\n' ){
										char* buff = new char[i+3];
										ZeroMemory(buff, i+3);
										memcpy(buff, recvBuff, i+2);
										httpHeader+=buff;
										chkBody = TRUE;
										offset=i+3;
										recvData.dataSize = pSys->ChkContentLength(httpHeader);
										if( recvData.dataSize > 0 ){
											recvData.data = new BYTE[recvData.dataSize];
										}
										SAFE_DELETE_ARRAY(buff);
										break;
									}
								}else{
									chkLine = TRUE;
								}
							}
						}
						if( chkBody == FALSE ){
							httpHeader += recvBuff;
						}
					}
					if( chkBody == TRUE ){
						if( recvData.dataSize > 0 ){
							memcpy(recvData.data + readBody, recvBuff+offset, min(iRet-offset, (int)(recvData.dataSize-readBody)));
							readBody+=iRet-offset;
						}
						if( recvData.dataSize <= readBody ){
							recvData.httpHeader = httpHeader;
							break;
						}
					}
				}
				if( recvData.httpHeader.size() > 0 ){
					int iRet = 1;
					pSys->m_pHttpProc(pSys->m_pParam, &recvData, &sendData);
					iRet = send(sock, (char*)sendData.httpHeader.c_str(), (int)sendData.httpHeader.size(), 0);
					if( iRet != SOCKET_ERROR && sendData.dataSize > 0){
						iRet = send(sock, (char*)sendData.data, sendData.dataSize, 0);
					}
				}
			}
			shutdown(sock,SD_RECEIVE);
			closesocket(sock);
			sock = NULL;
			if( hEventCmdWait != NULL ){
				SetEvent(hEventCmdWait);
			}
		}
	}

	if( sock != NULL ){
		shutdown(sock,SD_RECEIVE);
		closesocket(sock);
	}
	if( hEventCmdWait != NULL ){
		CloseHandle(hEventCmdWait);
	}
	
	return 0;
}
Example #16
0
CFileStreamingManager::CFileStreamingManager(void)
{
	this->lockEvent = _CreateEvent(FALSE, TRUE, NULL);

	this->nextCtrlID = 1;
}