现在的位置: 首页 > 综合 > 正文

repository assumed

2017年12月28日 ⁄ 综合 ⁄ 共 13903字 ⁄ 字号 评论关闭

    //
    /*    while(ReadFile(hFile,buffer,sizeof(buffer),&dwRead,NULL) && dwRead>0){
            for (int n=0;n<dwRead/3;n++)
            {
                offset=(n/16)*2;
                if(buffer[n*3+offset]>='a' && buffer[n*3+offset]<='f')
                    buffer2[n]=buffer[n*3+offset]-'a'+10;
                else if(buffer[n*3+offset]>='A' && buffer[n*3+offset]<='F')
                    buffer2[n]=buffer[n*3+offset]-'A'+10;
                else
                    buffer2[n]=buffer[n*3+offset]-'0';
                buffer2[n]<<=4;
                if(buffer[n*3+1+offset]>='a' && buffer[n*3+1+offset]<='f')
                    buffer2[n]+=buffer[n*3+1+offset]-'a'+10;
                else if(buffer[n*3+1+offset]>='A' && buffer[n*3+1+offset]<='F')
                    buffer2[n]+=buffer[n*3+1+offset]-'A'+10;
                else
                    buffer2[n]+=buffer[n*3+1+offset]-'0';
            }
            bRet=Send(buffer2,1024);
            if(!bRet)
                break;
            m_dwParam1+=dwRead;
            ResponseMessage(REDM_RESPONSE_UPDATE,m_dwParam1,0);

        }*/

//////////////////////////////

tool bar project, October 9,2011

//ON_COMMAND(ID_BUTTON_RED,OnButtonRed)
    ///ON_COMMAND(ID_BUTTON_GREEN,OnButtonGreen)
    ///ON_COMMAND(ID_BUTTON_BLUE,OnButtonBlue)

    //ON_UPDATE_COMMAND_UI(ID_BUTTON_BLUE,OnUpdateButtonBlue)
    //ON_UPDATE_COMMAND_UI(ID_BUTTON_GREEN,ButtonGreenUpdate)
    //ON_UPDATE_COMMAND_UI(ID_BUTTON_RED,ButtonRedUpdate)


    September 17, 2011 Saturday

///给TAB控件发送消息,企图改变当前选择项     TabCtrl_SetCurSel(GetDlgItem(m_hWnd,IDC_TAB1), 0); (int)SNDMSG((hwnd), TCM_SETCURSEL, (WPARAM)(i), 0) 

            NMHDR nmh;
            nmh.code=TCN_SELCHANGE;
            nmh.idFrom=GetDlgCtrlID(GetDlgItem(m_hWnd,IDC_TAB1));//control id
            nmh.hwndFrom=GetDlgItem(m_hWnd,IDC_TAB1);
            SendMessage(m_hWnd,WM_NOTIFY,(WPARAM)GetDlgItem(m_hWnd,IDC_TAB1),(LPARAM)&nmh);


强制生成的对话框窗口在任务栏上显示图标(September 22,2011 Thursday 15:30)

     DWORD dwStyle=0;
    dwStyle=GetWindowLongPtr(m_hWnd,GWL_EXSTYLE);
    DWORD status=0;
    status=SetWindowLongPtr(m_hWnd,GWL_EXSTYLE,dwStyle|WS_EX_APPWINDOW);


cl.exe path bat file (October 10,2011 Monday 14:07)

@SET VSINSTALLDIR=C:\Program Files\Microsoft Visual Studio 9.0

@SET VCINSTALLDIR=C:\Program Files\Microsoft Visual Studio 9.0\VC
@SET FrameworkDir=C:\WINDOWS\Microsoft.NET\Framework
@SET FrameworkVersion=v2.0.50727
@SET Framework35Version=v3.5
@if "%VSINSTALLDIR%"=="" goto error_no_VSINSTALLDIR
@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR

@echo Setting environment for using Microsoft Visual Studio 2008 x86 tools.

@call :GetWindowsSdkDir

@if not "%WindowsSdkDir%" == "" (
    set "PATH=%WindowsSdkDir%bin;%PATH%"
    set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%"
    set "LIB=%WindowsSdkDir%lib;%LIB%"
)

@rem
@rem Root of Visual Studio IDE installed files.
@rem
@set DevEnvDir=C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE

@set PATH=C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools;C:\WINDOWS\Microsoft.NET\Framework\v3.5;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program
Files\Microsoft Visual Studio 9.0\VC\VCPackages;%PATH%
@set INCLUDE=C:\Program Files\Microsoft Visual Studio 9.0\VC\ATLMFC\INCLUDE;C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE;%INCLUDE%
@set LIB=C:\Program Files\Microsoft Visual Studio 9.0\VC\ATLMFC\LIB;C:\Program Files\Microsoft Visual Studio 9.0\VC\LIB;%LIB%
@set LIBPATH=C:\WINDOWS\Microsoft.NET\Framework\v3.5;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program Files\Microsoft Visual Studio 9.0\VC\ATLMFC\LIB;C:\Program Files\Microsoft Visual Studio 9.0\VC\LIB;%LIBPATH%

@goto end

:GetWindowsSdkDir
@call :GetWindowsSdkDirHelper HKLM > nul 2>&1
@if errorlevel 1 call :GetWindowsSdkDirHelper HKCU > nul 2>&1
@if errorlevel 1 set WindowsSdkDir=%VCINSTALLDIR%\PlatformSDK\
@exit /B 0

:GetWindowsSdkDirHelper
@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows" /v "CurrentInstallFolder"') DO (
    if "%%i"=="CurrentInstallFolder" (
        SET "WindowsSdkDir=%%k"
    )
)
@if "%WindowsSdkDir%"=="" exit /B 1
@exit /B 0

:error_no_VSINSTALLDIR
@echo ERROR: VSINSTALLDIR variable is not set.
@goto end

:error_no_VCINSTALLDIR
@echo ERROR: VCINSTALLDIR variable is not set.
@goto end

:end


亮度数据存在一个位图中。(Nov 17,2011)

/*
	TCHAR szFilter[MAX_PATH],szFile[MAX_PATH],szDefExt[]=_T(".rrpb"),*pChr;
	TCHAR szBuf[MAX_PATH];
	OPENFILENAME ofn;
	HANDLE hfile;
	BITMAPFILEHEADER bmpfile;
	BITMAPINFOHEADER bmpinfo;
	RGBQUAD rgb[256]; ///256 STRUCTURES
	DWORD size;

	if(m_pControl->btBrightReserType){
		if(QueryINIText(_T("LEDSETUP"),_T("FILEBRIGHTREVISE9"),szFilter,MAX_PATH)<=0)
			lstrcpy(szFilter,_T("Receiver Chroma Revise File(*.rcpb)|*.rcpb|"));
		while((pChr=_tcsrchr(szFilter,'|')))
			*pChr=0;
		szFile[0]=0;
		strcpy(szDefExt,_T(".rcpb"));
		ZeroMemory(&ofn,sizeof(ofn));
		ofn.lStructSize=sizeof(ofn);
		ofn.hwndOwner=m_hWnd;
		ofn.lpstrFile=szFile;
		ofn.nMaxFile=MAX_PATH;
		ofn.lpstrFilter=szFilter;
		ofn.lpstrDefExt=szDefExt;
		ofn.nFilterIndex=1;
		ofn.Flags=OFN_EXPLORER|OFN_OVERWRITEPROMPT|OFN_EXTENSIONDIFFERENT;
		lstrcpy(szBuf,g_szModPath);
		lstrcat(szBuf,_T("config"));
		ofn.lpstrInitialDir=szBuf;
		if(GetSaveFileName(&ofn)!=TRUE)
			return FALSE;
		hfile=CreateFile(szFile,GENERIC_READ|GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,

(HANDLE)NULL);
		if(hfile==INVALID_HANDLE_VALUE){
			if(QueryINIText(_T("LEDREDDATA"),_T("ERRORSAVEFILE"),szBuf,MAX_PATH)<=0)
				lstrcpy(szBuf,_T("Failed to save!"));
			MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
			return FALSE;
		}
		WriteFile(hfile,m_BrightnessRevise9,sizeof(BRIGHTNESSREVISE9),&size,NULL);
		if(size!=sizeof(BRIGHTNESSREVISE9)){
			if(QueryINIText(_T("LEDREDDATA"),_T("ERRORSAVEFILE"),szBuf,MAX_PATH)<=0)
				lstrcpy(szBuf,_T("Failed to save!"));
			MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
			CloseHandle(hfile);
			return FALSE;
		}
		CloseHandle(hfile);
		return TRUE;
	}
	//////////////////////////////////////////////////////////////////////////////////////////////////////////
	if(QueryINIText(_T("LEDSETUP"),_T("FILEBRIGHTREVISE"),szFilter,MAX_PATH)<=0)
		lstrcpy(szFilter,_T("Receiver Bright Revise File(*.rrpb)|*.rrpb|"));
	while((pChr=_tcsrchr(szFilter,'|')))
		*pChr=0;
	szFile[0]=0;
	ZeroMemory(&ofn,sizeof(ofn));
	ofn.lStructSize=sizeof(ofn);
	ofn.hwndOwner=m_hWnd;
	ofn.lpstrFile=szFile;
	ofn.nMaxFile=MAX_PATH;
	ofn.lpstrFilter=szFilter;
	ofn.lpstrDefExt=szDefExt;
	ofn.nFilterIndex=1;
	ofn.Flags=OFN_EXPLORER|OFN_OVERWRITEPROMPT|OFN_EXTENSIONDIFFERENT;
	lstrcpy(szBuf,g_szModPath);
	lstrcat(szBuf,_T("config"));
	ofn.lpstrInitialDir=szBuf;
	if(GetSaveFileName(&ofn)!=TRUE)
		return FALSE;

	hfile=CreateFile(szFile,GENERIC_READ|GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,(HANDLE)

NULL);
	if(hfile==INVALID_HANDLE_VALUE){
		if(QueryINIText(_T("LEDREDDATA"),_T("ERRORSAVEFILE"),szBuf,MAX_PATH)<=0)
			lstrcpy(szBuf,_T("Failed to save!"));
		MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
		return FALSE;
	}

	bmpfile.bfType=0x4d42;///indicating the bitmap file
	bmpfile.bfOffBits=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)+sizeof(rgb);
	bmpfile.bfSize=bmpfile.bfOffBits+sizeof(m_BrightnessRevise);
	bmpfile.bfReserved1=bmpfile.bfReserved2=0;

	bmpinfo.biSize=sizeof(BITMAPINFOHEADER);
	bmpinfo.biWidth=256;
	bmpinfo.biHeight=256*4;
	bmpinfo.biPlanes=1;
	bmpinfo.biBitCount=8;
	bmpinfo.biClrUsed=256;
	bmpinfo.biCompression=BI_RGB;
	bmpinfo.biSizeImage=sizeof(m_BrightnessRevise);
	bmpinfo.biClrImportant=0;
	bmpinfo.biXPelsPerMeter=bmpinfo.biYPelsPerMeter=0;

	for(size=0;size<256;size++){
		rgb[size].rgbBlue=rgb[size].rgbGreen=rgb[size].rgbRed=(BYTE)size;
		rgb[size].rgbReserved=0;
	}

	WriteFile(hfile,&bmpfile,sizeof(BITMAPFILEHEADER),&size,NULL);///bitmap file header written

	if(size!=sizeof(BITMAPFILEHEADER)){
		if(QueryINIText(_T("LEDREDDATA"),_T("ERRORSAVEFILE"),szBuf,MAX_PATH)<=0)
			lstrcpy(szBuf,_T("Failed to save!"));
		MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
		CloseHandle(hfile);
		return FALSE;
	}
	WriteFile(hfile,&bmpinfo,sizeof(BITMAPINFOHEADER),&size,NULL);///bitmap info header written
	if(size!=sizeof(BITMAPINFOHEADER)){
		if(QueryINIText(_T("LEDREDDATA"),_T("ERRORSAVEFILE"),szBuf,MAX_PATH)<=0)
			lstrcpy(szBuf,_T("Failed to save!"));
		MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
		CloseHandle(hfile);
		return FALSE;
	}
	WriteFile(hfile,&rgb,sizeof(rgb),&size,NULL);///the real rgb value written
	if(size!=sizeof(rgb)){
		if(QueryINIText(_T("LEDREDDATA"),_T("ERRORSAVEFILE"),szBuf,MAX_PATH)<=0)
			lstrcpy(szBuf,_T("Failed to save!"));
		MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
		CloseHandle(hfile);
		return FALSE;
	}
	WriteFile(hfile,&m_BrightnessRevise,sizeof(BRIGHTNESSREVISE),&size,NULL); ///the practical revise data 

written
	if(size!=sizeof(BRIGHTNESSREVISE)){
		if(QueryINIText(_T("LEDREDDATA"),_T("ERRORSAVEFILE"),szBuf,MAX_PATH)<=0)
			lstrcpy(szBuf,_T("Failed to save!"));
		MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
		CloseHandle(hfile);
		return FALSE;
	}

	lstrcpy(m_szPath,szFile);

	SetWindowText(m_hWnd,m_szPath);

	return CloseHandle(hfile);
	////////////////////////////////////////////////////////////////////////////////////////////////////////
*/



///load file data to memory struct
//if(strcmp(pChr,"txt")==0)//直接读取色度系数文件
	//{
	//	CRedData::ReadChromParamFromPMFile(NULL,hfile,&m_BrightnessRevise,0);
	//	lstrcpy(m_szPath,szFile);
	//	SendDlgItemMessage(m_hWnd,IDC_COMBO1,CB_SETCURSEL,m_BrightnessRevise.btH,0);
	//	SendDlgItemMessage(m_hWnd,IDC_COMBO2,CB_SETCURSEL,m_BrightnessRevise.btW,0);
	//	SetWindowText(m_hWnd,m_szPath);
	//	CloseHandle(hfile);
	//	return TRUE;
	//}
	//ReadFile(hfile,&bmpfile,sizeof(BITMAPFILEHEADER),&size,NULL);
	//if(size!=sizeof(BITMAPFILEHEADER) ||
	//	bmpfile.bfType!=0x4d42 ||
	//	bmpfile.bfOffBits!=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)+sizeof(rgb) ||
	//	bmpfile.bfSize!=bmpfile.bfOffBits+sizeof(m_BrightnessRevise)){
	//	if(QueryINIText(_T("LEDREDDATA"),_T("ERRORLOADFILE"),szBuf,MAX_PATH)<=0)
	//		lstrcpy(szBuf,_T("Failed to load!"));
	//	MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
	//	CloseHandle(hfile);
	//	return FALSE;
	//}

	//ReadFile(hfile,&bmpinfo,sizeof(BITMAPINFOHEADER),&size,NULL);
	//if(size!=sizeof(BITMAPINFOHEADER) ||
	//	bmpinfo.biSize!=sizeof(BITMAPINFOHEADER) ||
	//	bmpinfo.biWidth!=256 ||
	//	bmpinfo.biHeight!=256*4 ||
	//	bmpinfo.biPlanes!=1 ||
	//	bmpinfo.biBitCount!=8 ||
	//	bmpinfo.biClrUsed!=256 ||
	//	bmpinfo.biCompression!=BI_RGB ||
	//	bmpinfo.biSizeImage!=sizeof(m_BrightnessRevise)){
	//	if(QueryINIText(_T("LEDREDDATA"),_T("ERRORLOADFILE"),szBuf,MAX_PATH)<=0)
	//		lstrcpy(szBuf,_T("Failed to load!"));
	//	MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
	//	CloseHandle(hfile);
	//	return FALSE;
	//}
	//for(size=0;size<256;size++){
	//		rgb[size].rgbBlue=rgb[size].rgbGreen=rgb[size].rgbRed=(BYTE)size;
	//		rgb[size].rgbReserved=0;
	//}
	//ReadFile(hfile,&rgb,sizeof(rgb),&size,NULL);
	//if(size!=sizeof(rgb)){
	//	if(QueryINIText(_T("LEDREDDATA"),_T("ERRORLOADFILE"),szBuf,MAX_PATH)<=0)
	//		lstrcpy(szBuf,_T("Failed to load!"));
	//	MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
	//	CloseHandle(hfile);
	//	return FALSE;
	//}
	//for(size=0;size<256;size++){
	//	if(rgb[size].rgbBlue!=(BYTE)size ||
	//		rgb[size].rgbGreen!=(BYTE)size ||
	//		rgb[size].rgbRed!=(BYTE)size){
	//		if(QueryINIText(_T("LEDREDDATA"),_T("ERRORLOADFILE"),szBuf,MAX_PATH)<=0)
	//			lstrcpy(szBuf,_T("Failed to load!"));
	//		MessageBox(m_hWnd,szBuf,_T(""),MB_OK|MB_ICONEXCLAMATION);
	//		CloseHandle(hfile);
	//		return FALSE;
	//	}
	//}

	//ReadFile(hfile,&m_BrightnessRevise,sizeof(BRIGHTNESSREVISE),&size,NULL);
	
	/*lstrcpy(m_szPath,szFile);
	SendDlgItemMessage(m_hWnd,IDC_COMBO1,CB_SETCURSEL,m_BrightnessRevise.btH,0);
	SendDlgItemMessage(m_hWnd,IDC_COMBO2,CB_SETCURSEL,m_BrightnessRevise.btW,0);
	SetWindowText(m_hWnd,m_szPath);
	ResetLimit();*/
	//ResetScroll();
	//m_Screen.Draw(NULL);


trash code:

/////////////////////////////////////////////////
	//CProgressStatus *prgStatus;
	///prgStatus=new CProgressStatus(g_hInstance);
	///prgStatus=new CProgressStatus(g_hInstance);
	///prgStatus.DoModal(NULL);
	///CProgressStatus prgStatus(g_hInstance);
	//prgStatus->Create(NULL);
	///prgStatus->DoShow(SW_SHOWNORMAL);
/*
	RECT rect;
	POINT pt;
	GetClientRect(GetDesktopWindow(),&rect);

	MoveWindow(prgStatus->GetWin(),(rect.right-rect.left)/2-300,(rect.bottom-rect.top)/2,363,47,TRUE);
	at 10:13, October 15,2011
	*/
/* commented at 17:20, October 13,2011

	HWND hwndPB,hwndParent;
	int cyVScroll;
	RECT rcClient;
	hwndParent=prgStatus->GetWin();
	///hwndParent=GetDesktopWindow();
	GetClientRect(hwndParent,&rcClient);
	///cyVScroll=GetSystemMetrics(SM_CYVSCROLL);

	hwndPB=CreateWindowEx(0,			///dwExStyle
				PROGRESS_CLASS			///class Name of window
				,(LPTSTR)NULL			/// window name
				,WS_CHILD|WS_VISIBLE	// dwStyle
				,rcClient.left			//x
				,rcClient.top		//y
				,rcClient.right									//nWidth
				,rcClient.bottom							//nHeight
				,hwndParent
				,(HMENU)0							///hMenu
				,g_hInstance						///窗口关联的模块的句柄
				,NULL);								///生成窗口的结构体参数
				
	//SendMessage(hwndPB,PBM_SETRANGE,0,MAKELPARAM(0,100));
	///totalPackage=nArray*nColorPackage;
	int totalPrgBar=(pBrigRev->btH+1)*(pBrigRev->btW+1)*(btAddress-0x07)*4;///using the properation
	SendMessage(hwndPB,PBM_SETRANGE,0,MAKELPARAM(0,totalPrgBar));
	SendMessage(hwndPB,PBM_SETSTEP,(WPARAM)4,0);
	SendMessage(hwndPB,PBM_STEPIT,0,0);
	/////////////////////////////////////////////////
*/


December 7,2011, 

256*256内270度旋转物理屏

/*
			//spining deasil ninety degree
			int i,j;
			BYTE *spinArray,*spinArrayTo;
			spinArray=new BYTE[lW*lH];
			spinArrayTo=new BYTE[lW*lH];
			///put single color datas into the temporal space, spinArray;
			for(i=0;i<lW;i++)//height
			{
				for(j=0;j<lH;j++)//width
				{
					spinArray[i*lH+j]=nData[i*256+j];
				}
			}
			//spining the spingArray
			for(i=0;i<lW;i++)//height, based on the perspective of original spinArray.
			{
				for(j=0;j<lH;j++)//width.
				{
					spinArrayTo[j*lW+lW-i-1]=spinArray[i*lH+j];
				}
			}
			///putting back the datas
			for(i=0;i<lH;i++)///height
			{
				for(j=0;j<lW;j++)///width
				{
					pData[i*256+j]=spinArrayTo[i*lW+j];
				}
			}
*/

//anther way

for (int i=0;i<lW;i++)//目标高度 ///this algorithm is not correct for 270 degree rotation.
			{
				for (int j=0;j<lH;j++)
				{
					//memcpy(&pData[(i*256+j)*nodebyte],&nData[((j)*256+(lW-i-1))*nodebyte],nodebyte);
                                        ///(j,w-i-1)==>(i,j), 256*256的放大版旋转。
					memcpy(&pData[((j)*256+(lW-i-1))*nodebyte],&nData[(i*256+j)*nodebyte],nodebyte);///singlebytes?
				}
			}

/// log file(January 16, 2012)

#ifdef _DEBUG
		DWORD lastError=0;
		HANDLE record=CreateFile("c:\\led_record.txt",GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_ALWAYS,0,NULL);
		if(record==INVALID_HANDLE_VALUE)
		{
			lastError=GetLastError();
			//return FALSE;
		}
		BOOL record_status=0;
		DWORD dwSend_record=0;
		DWORD distance=0;
		distance=::GetFileSize(record,NULL);
		SetFilePointer(record,distance,NULL,FILE_BEGIN);
		record_status=WriteFile(record,lpData,dwSize,&dwSend_record,NULL);
		if(record!=INVALID_HANDLE_VALUE)
			CloseHandle(record);
	
#endif

抱歉!评论已关闭.