亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? qssreader.cpp

?? QSS設備讀取的后臺服務程序
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
	dwThreadID7  = 0 ;
	dwThreadID8  = 0 ;
	dwThreadID9  = 0 ;
	dwThreadID10  = 0 ;

	SECURITY_ATTRIBUTES securityAttributes ;
	ZeroMemory( &securityAttributes, sizeof(SECURITY_ATTRIBUTES)) ;
	securityAttributes.nLength = sizeof(SECURITY_ATTRIBUTES) ;

	HANDLE hHandleQSS1  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread1, 0, 0 , &dwThreadID1) ;
	HANDLE hHandleQSS2  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread2, 0, 0 , &dwThreadID2) ;
/*	HANDLE hHandleQSS3  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread3, 0, 0 , &dwThreadID3) ;
	HANDLE hHandleQSS4  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread4, 0, 0 , &dwThreadID4) ;
	HANDLE hHandleQSS5  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread5, 0, 0 , &dwThreadID5) ;
	HANDLE hHandleQSS6  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread6, 0, 0 , &dwThreadID6) ;
	HANDLE hHandleQSS7  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread7, 0, 0 , &dwThreadID7) ;
	HANDLE hHandleQSS8  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread8, 0, 0 , &dwThreadID8) ;
	HANDLE hHandleQSS9  = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread9, 0, 0 , &dwThreadID9) ;
	HANDLE hHandleQSS10 = CreateThread( NULL, 0, ( LPTHREAD_START_ROUTINE )Thread10, 0, 0 , &dwThreadID10) ;
*/

	//====================================================


	//_Module.m_hInst ;

	uPtrRet = SetTimer( NULL, ID_TIMER, 60000, TIMERPROC(OnTimerProc) ) ;

    MSG msg;
    while (GetMessage(&msg, 0, 0, 0))
        DispatchMessage(&msg);


    _Module.RevokeClassObjects();
	//KillTimer( NULL, uPtrRet );

    CoUninitialize();
}

/////////////////////////////////////////////////////////////////////////////
//
extern "C" int WINAPI _tWinMain(HINSTANCE hInstance, 
    HINSTANCE /*hPrevInstance*/, LPTSTR lpCmdLine, int /*nShowCmd*/)
{
    lpCmdLine = GetCommandLine(); //this line necessary for _ATL_MIN_CRT
    _Module.Init(ObjectMap, hInstance, IDS_SERVICENAME, &LIBID_QSSREADERLib);
    _Module.m_bService = TRUE;

    TCHAR szTokens[] = _T("-/");

    LPCTSTR lpszToken = FindOneOf(lpCmdLine, szTokens);
    while (lpszToken != NULL)
    {
        if (lstrcmpi(lpszToken, _T("UnregServer"))==0)
            return _Module.UnregisterServer();

        // Register as Local Server
        if (lstrcmpi(lpszToken, _T("RegServer"))==0)
            return _Module.RegisterServer(TRUE, FALSE);
        
        // Register as Service
        if (lstrcmpi(lpszToken, _T("Service"))==0)
            return _Module.RegisterServer(TRUE, TRUE);
        
        lpszToken = FindOneOf(lpszToken, szTokens);
    }

    // Are we Service or Local Server
    CRegKey keyAppID;
    LONG lRes = keyAppID.Open(HKEY_CLASSES_ROOT, _T("AppID"), KEY_READ);
    if (lRes != ERROR_SUCCESS)
        return lRes;

    CRegKey key;
    lRes = key.Open(keyAppID, _T("{9CA56CBE-F9B5-433C-B7A0-9D8A0CA9747C}"), KEY_READ);
    if (lRes != ERROR_SUCCESS)
        return lRes;

    TCHAR szValue[_MAX_PATH];
    DWORD dwLen = _MAX_PATH;
    lRes = key.QueryValue(szValue, _T("LocalService"), &dwLen);

    _Module.m_bService = FALSE;
    if (lRes == ERROR_SUCCESS)
        _Module.m_bService = TRUE;

    _Module.Start();

    // When we get here, the service has been stopped
    return _Module.m_status.dwWin32ExitCode;
}

/****************************************************************************/
//																			//
//	線程函數和線程管理函數													//
//																			//
//	時間:2005-01-18		作者:Jason										//
//																			//
//																			//
/****************************************************************************/

LRESULT CALLBACK Thread1( void ) 
{
	HWND hWnd ;
	MSG Msg ;
	WNDCLASS wndClass ;

	char lpszClassName[] = "Thread1" ;
	char lpszTitle[] = "Thread1" ;

	HINSTANCE hInstance = NULL ;

	
	hInstance = _Module.m_hInst ;

	// 窗口類定義
	wndClass.cbClsExtra  = 0;
	wndClass.cbWndExtra  = 0;
	wndClass.hbrBackground = (HBRUSH)GetStockObject( GRAY_BRUSH ); 
	wndClass.hCursor = LoadCursor( NULL, IDC_ARROW );
	wndClass.hIcon   = LoadIcon( NULL, IDI_APPLICATION );
	wndClass.hInstance   = hInstance;
	wndClass.lpfnWndProc = (WNDPROC)OnThreadProc1;
	wndClass.lpszClassName = lpszClassName ;
	wndClass.lpszMenuName  = NULL;
	wndClass.style = 0 ;    

	if ( !RegisterClass( &wndClass ))
	{
		MessageBeep(0) ;
		return false ;
	}

	hWnd = CreateWindow( lpszClassName, lpszTitle, WS_OVERLAPPEDWINDOW, 300,0,200,150,NULL,NULL, hInstance, NULL ) ;

	hWnd1 = hWnd ;

	//ShowWindow( hWnd, SW_SHOW ) ;
	//UpdateWindow( hWnd ) ;
	
	//SetTimer( hWnd, ID_TIMER1, 10000, TIMERPROC(OnTimerProc1) ) ;
	//UINT_PTR uPtrRet = SetTimer( hWnd, ID_TIMER1, 10000, TIMERPROC(OnTimerProc) ) ;

	while( GetMessage( &Msg, NULL, 0, 0 ) ) ;
	{
		TranslateMessage( &Msg ) ;
		DispatchMessage( &Msg ) ;

	}

	return Msg.wParam ;

}

//===============================================================

LRESULT CALLBACK Thread2( void ) 
{
	HWND hWnd ;
	MSG Msg ;
	WNDCLASS wndClass ;

	char lpszClassName[] = "Thread2" ;
	char lpszTitle[] = "Thread2" ;

	HINSTANCE hInstance = NULL ;

	hInstance = _Module.m_hInst ;

	// 窗口類定義
	wndClass.cbClsExtra  = 0;
	wndClass.cbWndExtra  = 0;
	wndClass.hbrBackground = (HBRUSH)GetStockObject( GRAY_BRUSH ); 
	wndClass.hCursor = LoadCursor( NULL, IDC_ARROW );
	wndClass.hIcon   = LoadIcon( NULL, IDI_APPLICATION );
	wndClass.hInstance   = hInstance;
	wndClass.lpfnWndProc = (WNDPROC)OnThreadProc2;
	wndClass.lpszClassName = lpszClassName ;
	wndClass.lpszMenuName  = NULL;
	wndClass.style = 0 ;    


	if ( !RegisterClass( &wndClass ))
	{
		MessageBeep(0) ;
		return false ;
	}

	hWnd = CreateWindow( lpszClassName, lpszTitle, WS_OVERLAPPEDWINDOW, 300,0,200,150,NULL,NULL, hInstance, NULL ) ;

	hWnd2 = hWnd ;

	//ShowWindow( hWnd, SW_SHOW ) ;
	//UpdateWindow( hWnd ) ;
	
	//SetTimer( hWnd, ID_TIMER1, 10000, TIMERPROC(OnTimerProc1) ) ;
	//UINT_PTR uPtrRet = SetTimer( hWnd, ID_TIMER2, 10000, TIMERPROC(OnThreadProc1) ) ;

	while( GetMessage( &Msg, NULL, 0, 0 ) ) ;
	{
		TranslateMessage( &Msg ) ;
		DispatchMessage( &Msg ) ;

	}

	return Msg.wParam ;

}


//================================================================================
// 
// 線程處理函數 1 處理 QSS 1 連接的數據
// 

LRESULT WINAPI OnThreadProc1( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam ) 
{

	DWORD dwRet = -1 ;
	hWnd1 = hWnd ;

	switch( message )
	{
		case WM_CREATE:
			MessageBox( NULL, "WM_CREATE","",MB_OK) ;
			break ;
		case WM_TIMER:
			MessageBox( NULL, "WM_TIMER","",MB_OK) ;
			
			dwRet = QSSReadWrite( 1 ) ;

			break ;
		case WM_THREAD1:

			MessageBox( NULL, "WM_THREAD1","",MB_OK) ;
			dwRet = QSSReadWrite( 1 ) ;
			break ;
		case WM_THREAD2:

			MessageBox( NULL, "WM_THREAD2","",MB_OK) ;
			break ;
		case WM_DESTROY:
			// 
			//SendMessage( NULL, 
			KillTimer( hWnd, ID_TIMER1) ;
			PostQuitMessage( 0 ) ;
			break ;

		default:
			return DefWindowProc( hWnd, message, wParam, lParam ) ;
	}

	return 0 ;

}

//================================================================================
// 
// 線程處理函數 2 處理 QSS 2 連接的數據
//
// ODBC 連接數據庫

LRESULT WINAPI OnThreadProc2( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam ) 
{

	DWORD dwRet = -1 ;
	hWnd2 = hWnd ;

	switch( message )
	{
		case WM_CREATE:
			MessageBox( NULL, "WM_CREATE","",MB_OK) ;
			break ;
		case WM_TIMER:
			MessageBox( NULL, "WM_TIMER","",MB_OK) ;
			
			dwRet = QSSReadWrite( 2 ) ;
			break ;
		case WM_THREAD1:

			MessageBox( NULL, "WM_THREAD1","",MB_OK) ;
			break ;
		case WM_THREAD2:
		
			MessageBox( NULL, "WM_THREAD2","",MB_OK) ;
			break ;
		case WM_DESTROY:
			// 
			//SendMessage( NULL, 
			KillTimer( hWnd, ID_TIMER1) ;
			PostQuitMessage( 0 ) ;
			break ;

		default:
			return DefWindowProc( hWnd, message, wParam, lParam ) ;
	}

	return 0 ;



}


VOID CALLBACK OnTimerProc(HWND hWnd,UINT uMsg,UINT_PTR idEvent,DWORD dwTime)
{
	SendMessage( hWnd1, WM_THREAD1, 0, 0 ) ;
	SendMessage( hWnd2, WM_THREAD2, 0, 0 ) ;

}


DWORD QSSReadWrite( __int32 n32QssNumber )
{
/*
	// 動態鏈接庫名稱 ( PMBHair.dll )

	int nRet = -1 ;
	AirCondState struAirCondState ;
	ZeroMemory( &struAirCondState, sizeof(AirCondState)) ;

	// 打開串口資源
	HANDLE hCom = NULL ;
	
	// 裝載動態鏈接庫
	HMODULE hAirCModule = LoadLibrary( "PMBHair.dll" ) ;
	if ( FAILED(hAirCModule) )
		return -11 ;
	else
	{

		
		GetOpenDevice   getOpenDevice   ;
		GetAirCondState getAirCondState ;
		
		// 得到動態鏈接庫中的函數的地址指針
		getOpenDevice   = ( GetOpenDevice )GetProcAddress( hAirCModule , "OpenDevice" ) ;
		getAirCondState = ( GetAirCondState )GetProcAddress( hAirCModule , "GetIndoorStatus" ) ;
		
		// 打開串口句柄

		hCom = getOpenDevice( "com1") ;

		long lgret = GetLastError() ;

		// 調用函數取得( QSS )空調運行數據, 共 48 個內機 

		for ( int i = 0 ; i < 48 ; i ++ ) 
		{
			nRet = getAirCondState( hCom, i , &struAirCondState ) ;

			// 如果取出成功,保存數據到SQL SERVER 2000 數據庫中
		}


	}

	// 釋放動態鏈接庫
	FreeLibrary( hAirCModule ) ;

	// 關閉并釋放串口句柄
	CloseHandle( hCom ) ;

	//ExitThread( 0 ) ;

*/

	CDatabase dbConn ;

	CRecordset dbSet ;
	
	CString strConn ;
	CString strSql  ;
	CString strID, strBh, strName ;
	int nBh ;
	//int nID  ;

	strID = "1" ;
	strName = "Jason" ;
	nBh = n32QssNumber ;
	char tBh[20], tID[20] ;
	
	itoa( nBh, tBh, 10 ) ;

	strBh = tBh ;

	while( 1 )
	{
		//dbConn.OpenEx( "DSN = AirCondition ; UID = sa ; PWD = sql", CDatabase::openReadOnly | CDatabase::noOdbcDialog ) ;
		dbConn.Open( "AirCondition", FALSE, FALSE, "ODBC;UID = sa;PWD = topdigi", TRUE ) ;
		
		strConn = dbConn.GetConnect() ;

		int i ;
	//	strSql = "Select max(AirConSwitch_ID) into "+ strID + " from t_test1 " ;

	//	dbConn.ExecuteSQL( strSql ) ;

	//	i = atoi( strID ) ;

		// 設置流水號
		nBh = atoi( strID ) ;

		for( i = 0 ; i < 30 ; i ++ )
		{
			nBh++ ;

			itoa( nBh, tID, 10 ) ;

			strID = tID ;

			//strSql = "Select * from t_test" ;
			//int i = 101 ;
			strSql = "Insert into t_test1(AirConSwitch_ID ,Equipment_ID, Run_Flag ) values( '" + strID + "' , '"+ strName + "' , '1' )" ;


			dbConn.ExecuteSQL( strSql ) ;

		}

		//Sleep( 10000 ) ;

	}

	dbConn.Close() ;

	return 1 ;



}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲成aⅴ人片在线观看| 天堂一区二区在线免费观看| 久久一区二区三区国产精品| 日韩视频一区二区三区在线播放 | 欧美性淫爽ww久久久久无| 色综合久久综合网97色综合| 97久久精品人人做人人爽| 99久久99久久综合| 一本大道久久a久久精二百| 91免费版pro下载短视频| 色嗨嗨av一区二区三区| 欧美日韩精品一二三区| 91精品国产91久久综合桃花| 日韩免费一区二区| 精品91自产拍在线观看一区| 精品久久久久久久久久久久包黑料| 日韩欧美亚洲国产精品字幕久久久| 精品区一区二区| 国产女同性恋一区二区| 国产精品白丝在线| 亚洲午夜电影网| 秋霞午夜鲁丝一区二区老狼| 久久成人综合网| 成人性生交大片免费| 欧美亚洲愉拍一区二区| 91麻豆精品国产91久久久使用方法| 欧美一区二区三区视频免费 | 亚洲免费观看高清完整| 亚洲国产精品影院| 麻豆免费精品视频| 99国产精品久久久久久久久久久| 日本国产一区二区| 日韩欧美国产1| 亚洲国产精品二十页| 亚洲女同ⅹxx女同tv| 日本不卡一区二区三区高清视频| 国产美女精品在线| 色网综合在线观看| 日韩精品一区二区三区在线| 欧美国产一区在线| 午夜亚洲福利老司机| 国产综合色视频| 日本二三区不卡| 久久精品亚洲精品国产欧美 | 国产又粗又猛又爽又黄91精品| 国产盗摄精品一区二区三区在线| 97aⅴ精品视频一二三区| 91精品国产综合久久久蜜臀粉嫩| 日本一区免费视频| 亚洲电影一级片| 成人精品免费视频| 欧美精品在线一区二区| 中文字幕av不卡| 青青草成人在线观看| 91在线观看地址| 欧美精品一区二区三区蜜臀| 亚洲一区在线播放| 丁香婷婷综合网| 欧美刺激脚交jootjob| 亚洲免费在线观看| 国产成人一区在线| 欧美一区二区三区免费大片| 国产精品久久久久精k8 | 制服丝袜成人动漫| 亚洲欧美综合另类在线卡通| 六月丁香综合在线视频| 欧美午夜在线一二页| 国产欧美视频一区二区| 久久99热国产| 欧美日韩国产在线播放网站| 亚洲欧美在线aaa| 精品一区二区在线视频| 欧美视频一区二区三区| 亚洲美女偷拍久久| 成人午夜私人影院| 久久久久久久久久久久久久久99| 午夜精品一区二区三区三上悠亚 | 久久嫩草精品久久久精品一| 天堂蜜桃一区二区三区| 一本在线高清不卡dvd| 国产欧美一区二区精品婷婷| 精品一区二区三区日韩| 91精品国产综合久久精品图片| 亚洲猫色日本管| www.欧美色图| 中文字幕免费不卡在线| 国产一区91精品张津瑜| 日韩精品中文字幕在线一区| 日韩精品电影在线| 欧美肥妇bbw| 婷婷开心激情综合| 欧美午夜一区二区| 亚洲国产日韩一区二区| 在线观看日韩电影| 亚洲制服丝袜av| 在线看国产一区二区| 亚洲欧美一区二区久久| 91啪亚洲精品| 一区二区三区中文在线| 日本福利一区二区| 亚洲午夜激情av| 欧美日韩国产高清一区二区| 污片在线观看一区二区| 在线电影欧美成精品| 日本中文一区二区三区| 欧美一区二区三区四区久久| 蜜臀99久久精品久久久久久软件| 678五月天丁香亚洲综合网| 日韩精品一区第一页| 884aa四虎影成人精品一区| 五月婷婷久久丁香| 日韩亚洲欧美中文三级| 久久精品久久久精品美女| 日韩女优毛片在线| 国产一区二区h| 国产午夜精品一区二区三区视频| 国产精品亚洲一区二区三区妖精| 国产午夜亚洲精品午夜鲁丝片| av在线一区二区三区| 亚洲日本免费电影| 欧美日韩中文另类| 奇米影视一区二区三区小说| 26uuu欧美日本| 成人听书哪个软件好| 亚洲另类在线制服丝袜| 欧美日韩免费观看一区三区| 青娱乐精品视频| 国产欧美精品区一区二区三区 | 久久一区二区三区四区| 成人免费av资源| 亚洲最新在线观看| 欧美一级片在线| 精品一区二区三区视频在线观看| 久久久国产精品不卡| av电影一区二区| 天天射综合影视| 国产日韩欧美高清| 欧美综合欧美视频| 激情成人午夜视频| 亚洲欧美激情小说另类| 日韩一区二区在线观看视频播放| 国产精品主播直播| 亚洲免费大片在线观看| 欧美va天堂va视频va在线| 成人黄色免费短视频| 亚洲成人你懂的| 国产亚洲综合在线| 91国产精品成人| 国产一区二区三区免费| 一区二区三区中文在线观看| 欧美精品一区二区在线播放| 日本韩国欧美一区二区三区| 国产一区二区久久| 午夜伊人狠狠久久| 国产视频不卡一区| 91精品国产综合久久久蜜臀粉嫩| www.成人网.com| 美女网站视频久久| 亚洲视频免费看| 久久在线观看免费| 7777精品伊人久久久大香线蕉完整版 | 88在线观看91蜜桃国自产| 国产99久久久精品| 欧美96一区二区免费视频| 国产精品不卡视频| 精品美女在线观看| 亚洲综合另类小说| 日韩免费视频线观看| 色综合中文字幕国产 | 日韩国产在线观看一区| 国产欧美精品日韩区二区麻豆天美| 欧美三级一区二区| 成人免费高清视频在线观看| 免费在线观看精品| 一区二区激情视频| 久久精品视频在线看| 欧美三级欧美一级| 91免费视频网址| 国产传媒一区在线| 免费观看成人av| 亚洲成人免费视| 亚洲精品乱码久久久久久黑人 | 一区二区三区.www| 国产精品素人一区二区| 精品对白一区国产伦| 日韩一区二区免费视频| 欧美色爱综合网| 色天天综合久久久久综合片| 成人aa视频在线观看| 国产精品亚洲成人| 麻豆精品精品国产自在97香蕉| 首页亚洲欧美制服丝腿| 一区二区在线观看视频在线观看| 中文在线一区二区| 久久精品日韩一区二区三区| 欧美zozo另类异族| 91精品国产色综合久久不卡电影| 欧美日韩一级片网站| 欧美亚日韩国产aⅴ精品中极品| 94-欧美-setu|