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

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

?? calcborn.cpp

?? 預產期的計算
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
		dwCrc32 = ((dwCrc32 >> 8) & 0x00FFFFFF) ^ \
			Crc32Table[(*pData++) ^ (BYTE)(dwCrc32 & 0xFF)];
	}
	return (~dwCrc32);
}

/* 處理路徑加or減"\\",nCut==0 為加上"\\" */
void HandleSckPath(char *pStr, int nCut)
{
	int nLen = lstrlen(pStr);
	if(pStr == NULL || nLen <= 0) return;
	char *p = pStr + nLen - 1;
	if(!nCut && *p != '\\') {*(++p) = '\\'; *(++p) = '\0';}
	else if(nCut && *p == '\\') *p = '\0';
}

/* 字符串之間的拷貝,可設置源緩存大小,返回不帶'\0'的長度 */
int lstrCpy(char *chDes, const char *chSrc, int nMax/* = 0*/)
{
	if(!chDes) return 0;
	if(!chSrc) {chDes[0] = '\0'; return 0;}
	int nLen = 0;
	for(;;)
	{
		chDes[nLen] = chSrc[nLen];
		if(chDes[nLen] == '\0') break;
		nLen++;
		if(nMax && nLen >= nMax - 1)
		{
			chDes[nLen] = '\0'; break;
		}
	}
	return nLen;
}

/* 獲取文件名的開始位置(字符串數據索引) */
int GetNamePos(LPCTSTR chFile)
{
	LPCTSTR chCurr = chFile, chRec = chFile;
	while(*chCurr) {if(*(chCurr++) == '\\') chRec = chCurr;}
	return (chRec - chFile);
}

/* 獲取文件的全路徑中的文件名首指針 */
char *GetNamePtr(const char *chFile)
{
	const char *chCurr = chFile, *chRec = chFile;
	while(*chCurr) {if(*(chCurr++) == '\\') chRec = chCurr;}
	LONG nOff = (LONG)chRec; return ((char *)nOff);
}

/* 得到文件名的長度(小數點的位置) */
int GetNameLen(LPCTSTR chFile)
{
	LPCTSTR chCurr = chFile, chRec = NULL;
	for(;;)
	{
		if(*chCurr == '.') chRec = chCurr;
		else if(*chCurr == '\0')
		{
			if(!chRec) chRec = chCurr;
			break;
		}
		chCurr++;
	}
	return (chRec ? (chRec - chFile) : 0);
}

/* 判斷文件擴展名與指定的是否相同,不帶'.'點 */
BOOL IsSameExt(LPCTSTR chFile, LPCTSTR chExt)
{
	if(!chFile || !chExt) return (FALSE);
	int nPos = GetNameLen(chFile) + 1;
	return (stricmp(&chFile[nPos], chExt) == 0);
}

/* 備份指定的文件,在同一目錄下,使用指定擴展名 */
BOOL BackupFile(LPCTSTR chFile, LPCTSTR chExt)
{
	char chBak[MAX_PATH];
	lstrcpy(chBak, chFile);
	int nPos = GetNameLen(chBak) + 1;
	lstrcpy(&chBak[nPos], chExt);
	SetFileAttributes(chBak, 0x20);
	return (CopyFile(chFile, chBak, FALSE));
}

/* 將給定路徑去除最后一級目錄,求得上層目錄 */
void GetUpperFolder(char *chPath)
{
	char *chUp = NULL, *chTp = NULL;
	while(*chPath)
	{
		if(*(chPath++) == '\\')
		{
			chUp = chTp;
			chTp = chPath;
		}
	}
	if(!chTp) *chPath = '\0';
	else if(!chUp) *chTp = '\0';
	else *chUp = '\0';
}

/* 使字符串自適應給定長度,中間填充"..." */
void AutoAdaptLength(char *pDes, const char *pSrc, int nObj)
{
	if(!pDes || !pSrc || nObj < 0) return;
	
	if(nObj < 5) {memcpy(pDes, pSrc, nObj);
		pDes[nObj] = '\0'; return;}
	
	int nLen = lstrlen(pSrc);
	if(nLen <= nObj) {lstrcpy(pDes, pSrc); return;}
	
	int nLf = (nObj - 3) / 2, nRt = nObj - (nLf + 3);
	memcpy(pDes, pSrc, nLf);
	pDes[nLf] = pDes[nLf + 1] = pDes[nLf + 2] = '.';
	lstrcpy(&pDes[nLf + 3], &pSrc[nLen - nRt]);
}

/* 更新原有的文件名,只是復制了新的文件名過去,再加上新的擴展名 */
void RenewFileName(char *chDesFile, const char *chSrcFile,
					const char *chFileExt)
{
	if(chDesFile == NULL || chSrcFile == NULL) return;
	int i = 0, j = 0, nLen[2] = {lstrlen(chSrcFile), lstrlen(chDesFile)};
	if(nLen[0] < 1) return;
	if(nLen[1] < 1) {lstrcpy(chDesFile, chSrcFile); nLen[1] = nLen[0];}
	for(i=nLen[0]-1; i>=0; i--) {if(chSrcFile[i] == '\\') break;} i++;
	for(j=nLen[1]-1; j>=0; j--) {if(chDesFile[j] == '\\') break;} j++;
	while(i <= nLen[0])
	{
		if(chSrcFile[i] == '.' && chFileExt != NULL) break;
		chDesFile[j++] = chSrcFile[i++];
	}
	if(chFileExt == NULL) return; chDesFile[j++] = '.'; i = 0;
	for(;;) {chDesFile[j++] = chFileExt[i]; if(chFileExt[i++] == '\0') break;}
}

/* 求出參考路徑的最頂目錄(有以'\\'結束的),并復制到chNew */
int GenPathTopDir(char *chNew, const char *chOld)
{
	if(!chNew || !chOld) return 0;
	int nPos[2] = {-1, -1}, nLen = 0;
	for(;;)
	{
		if(chOld[nLen] == '\0') break;
		else if(chOld[nLen] == '\\')
		{
			nPos[0] = nPos[1];
			nPos[1] = nLen + 1;
		}
		nLen++;
	}
	if(nPos[0] < 0) nLen = lstrCpy(chNew, "OutPut\\");
	else
	{
		nLen = nPos[1] - nPos[0];
		memcpy(chNew, &chOld[nPos[0]], nLen);
		chNew[nLen] = '\0';
	}
	return (nLen);
}

/* 將64位無符號整型數顯示到字符中去 */
void GetNumString(char *chData, DWORD64 dwData, int bHex)
{
	if(chData == NULL) return;
	if(dwData <= MAXDWORD)
	{
		if(bHex) sprintf(chData, "00000000%08X", (DWORD)dwData);
		else sprintf(chData, "%u", dwData);
	}
	else
	{
		DWORD dwHigh, dwLow;
		if(bHex)
		{
			dwHigh = (DWORD)((dwData >> 32) & 0xFFFFFFFF);
			dwLow = (DWORD)(dwData & 0xFFFFFFFF);
			sprintf(chData, "%08X%08X", dwHigh, dwLow);
		}
		else
		{
			dwHigh = (DWORD)(dwData / 1000000);
			dwLow  = (DWORD)(dwData - dwHigh * (DWORD64)1000000);
			sprintf(chData, "%u%u", dwHigh, dwLow);
		}
	}
}

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

/* 系統用信息對話框:窗口句柄,按鈕類型,信息字符串 */
INT MsgBox(HWND hWnd, UINT uType, LPCTSTR chInfor, ...)
{
	char chTitle[sizeof(TCBOX_TITLE)];
	CryptXOR(chTitle, TCBOX_TITLE, sizeof(TCBOX_TITLE));
	CString sInfor = "";
	if(chInfor && chInfor[0])
	{
		va_list argptr;
		va_start(argptr, chInfor);
		sInfor.FormatV(chInfor, argptr);
		va_end(argptr);
	}
	else sInfor = chTitle;
	return (MessageBox(hWnd, sInfor, chTitle, uType));
}

/* 判斷窗口的有效性,若是則保存其屏幕坐標的窗口位置 */
BOOL ReadWndRect(CRect &rc, CWnd *pWnd)
{
	if(!pWnd || !pWnd->m_hWnd) return (FALSE);
	if(pWnd->IsIconic()) return (FALSE);
	pWnd->GetWindowRect(&rc); return (TRUE);
}

/* 將指定的屏幕坐標矩形恢復到指定的窗口,判斷有效性 */
BOOL WritWndRect(CRect &rc, CWnd *pWnd, INT nCmd/* = SW_SHOWNORMAL*/)
{
	if(!pWnd || !pWnd->m_hWnd) return (FALSE);
	if(!rc.IsRectEmpty() && !rc.IsRectNull() && \
		rc.Width() >= 32 && rc.Width() <= 4096 &&
		rc.Height() >= 32 && rc.Height() <= 3072)
	{
		CRect src; pWnd->GetWindowRect(&src);
		rc.right = rc.left + src.Width();
		rc.bottom = rc.top + src.Height();
		pWnd->MoveWindow(&rc);
	}
	else pWnd->CenterWindow();
	pWnd->ShowWindow(nCmd); return (TRUE);
}

/* 判斷給定的窗口指針,是否是有效的,可見的 */
BOOL IsVisWnd(const CWnd *pWnd)
{
	if(!pWnd || !IsWindow(pWnd->m_hWnd))
		return (FALSE);
	return (pWnd->IsWindowVisible());
}

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

/* 為指定擴展名,增加子鍵操作,使用指定程序操作(含命令行) */
BOOL AddRunAtExt(LPCTSTR chExt, LPCTSTR chKey, LPCTSTR chCap, LPCTSTR chRun)
{
	HKEY hKey = NULL; LONG nRet, nLen; 
	DWORD dwRet = 0, dwLen = 0;
	char chXidKey[MAX_PATH * 2];
	
	/*===========================================================*/
	
	/* 1、首先確認.EXT所關聯的XID鍵值,位于默認值 */
	nRet = RegCreateKeyEx(HKEY_CLASSES_ROOT, chExt,
		0L, NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS,
		NULL, &hKey, &dwRet);
	if(nRet == ERROR_SUCCESS && hKey)
	{
		BOOL bNew = (dwRet == REG_CREATED_NEW_KEY);
		
		if(!bNew) /* 打開已經存在的 */
		{
			dwLen = sizeof(chXidKey);
			nRet = RegQueryValueEx(hKey, "", 0, NULL,
				(BYTE *)chXidKey, &dwLen);
		}
		else /* 原來不存在,現開始創建 */
		{
			dwLen = sprintf(chXidKey, "TCSY.%s", chKey) + 1;
			nRet = RegSetValueEx(hKey, "", 0, REG_SZ,
				(BYTE *)chXidKey, dwLen);
		}
	}
	if(hKey) {RegCloseKey(hKey); hKey = NULL;}
	if(nRet != ERROR_SUCCESS || dwLen <= 1) return (FALSE);
	nLen = dwLen - 1; /* chXidKey鍵名的字串長度 */
	
	/*===========================================================*/
	
	/* 2、確認所增加的菜單的項目名稱,位于默認值 */
	nLen += sprintf(&chXidKey[nLen], "\\shell\\%s", chKey);
	nRet = RegCreateKeyEx(HKEY_CLASSES_ROOT, chXidKey, 0L,
			NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS,
			NULL, &hKey, NULL);
	if(nRet == ERROR_SUCCESS && hKey) /* 右鍵菜單名稱 */
	{
		dwLen = lstrlen(chCap) + 1;
		nRet = RegSetValueEx(hKey, "", 0, REG_SZ,
			(BYTE *)chCap, dwLen);
	}
	if(hKey) {RegCloseKey(hKey); hKey = NULL;}
	if(nRet != ERROR_SUCCESS) return (FALSE);
	
	/*===========================================================*/
	
	/* 3、確認此菜單所使用的命令行及參數,位于默認值 */
	sprintf(&chXidKey[nLen], "\\%s", "Command");
	nRet = RegCreateKeyEx(HKEY_CLASSES_ROOT, chXidKey, 0L,
			NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS,
			NULL, &hKey, NULL);
	if(nRet == ERROR_SUCCESS && hKey) /* 設置執行命令 */
	{
		char chOrder[MAX_PATH * 2] = "";
		dwLen = sprintf(chOrder, "\"%s\" \"%%1\"", chRun) + 1;
		nRet = RegSetValueEx(hKey, "", 0, REG_SZ,
			(BYTE *)chOrder, dwLen);
	}
	if(hKey) {RegCloseKey(hKey); hKey = NULL;}
	return (nRet == ERROR_SUCCESS); /* 返回是否成功 */
}

/* 為指定擴展名,刪除子鍵操作,即程序不再綁定擴展名的使用 */
BOOL DelRunAtExt(LPCTSTR chExt, LPCTSTR chKey)
{
	HKEY hKey = NULL; LONG nRet, nLen;
	DWORD dwLen = 0;
	char chXidKey[MAX_PATH * 2];
	
	nRet = RegOpenKeyEx(HKEY_CLASSES_ROOT, chExt, 0L,
		KEY_ALL_ACCESS, &hKey);
	if(nRet == ERROR_SUCCESS && hKey) /* 獲取子鍵位置 */
	{
		dwLen = sizeof(chXidKey);
		nRet = RegQueryValueEx(hKey, "", 0, NULL,
			(BYTE *)chXidKey, &dwLen);
	}
	if(hKey) {RegCloseKey(hKey); hKey = NULL;}
	if(nRet != ERROR_SUCCESS || dwLen <= 1) return (FALSE);
	nLen = --dwLen; /* chXidKey鍵名的字串長度 */
	
	nLen += sprintf(&chXidKey[nLen], "\\shell\\%s", chKey);
	nRet = RegOpenKeyEx(HKEY_CLASSES_ROOT, chXidKey, 0L,
		KEY_ALL_ACCESS, &hKey);
	if(nRet == ERROR_SUCCESS && hKey) /* 刪除執行命令 */
		nRet = RegDeleteKey(hKey, "Command");
	if(hKey) {RegCloseKey(hKey); hKey = NULL;}
	if(nRet != ERROR_SUCCESS) return (FALSE);
	nLen = dwLen; /* chXidKey鍵名的字串長度 */
	
	nLen += lstrCpy(&chXidKey[nLen], "\\shell");
	nRet = RegOpenKeyEx(HKEY_CLASSES_ROOT, chXidKey, 0L,
		KEY_ALL_ACCESS, &hKey);
	if(nRet == ERROR_SUCCESS && hKey) /* 刪除子鍵值 */
		nRet = RegDeleteKey(hKey, chKey);
	if(hKey) {RegCloseKey(hKey); hKey = NULL;}
	return (nRet == ERROR_SUCCESS); /* 返回是否成功 */
}

/* 為指定擴展名,將指定的子鍵操作,設置為默認的,恢復須備份 */
BOOL DefRunAtExt(LPCTSTR chExt, LPCTSTR chKey, char *chBak)
{
	HKEY hKey = NULL; LONG nRet, nLen;
	DWORD dwLen = 0;
	char chXidKey[MAX_PATH * 2];
	
	nRet = RegOpenKeyEx(HKEY_CLASSES_ROOT, chExt, 0L,
		KEY_ALL_ACCESS, &hKey);
	if(nRet == ERROR_SUCCESS && hKey) /* 獲取子鍵位置 */
	{
		dwLen = sizeof(chXidKey);
		nRet = RegQueryValueEx(hKey, "", 0, NULL,
			(BYTE *)chXidKey, &dwLen);
	}
	if(hKey) {RegCloseKey(hKey); hKey = NULL;}
	if(nRet != ERROR_SUCCESS || dwLen <= 1) return (FALSE);
	nLen = --dwLen; /* chXidKey鍵名的字串長度 */
	
	nLen += sprintf(&chXidKey[nLen], "\\shell");
	nRet = RegOpenKeyEx(HKEY_CLASSES_ROOT, chXidKey, 0L,
		KEY_ALL_ACCESS, &hKey);
	if(nRet == ERROR_SUCCES

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女视频黄a大片欧美| 欧美专区亚洲专区| 欧美亚洲丝袜传媒另类| 精品第一国产综合精品aⅴ| 亚洲色图另类专区| 国产麻豆欧美日韩一区| 欧美美女黄视频| 综合婷婷亚洲小说| 国产在线看一区| 91精品国产欧美一区二区| 最新久久zyz资源站| 国产揄拍国内精品对白| 欧美精品xxxxbbbb| 亚瑟在线精品视频| 91久久精品一区二区三区| 欧美极品aⅴ影院| 另类小说综合欧美亚洲| 欧美日韩一区不卡| 一区二区国产视频| 91视频在线观看免费| 国产日韩欧美精品电影三级在线| 蜜桃视频一区二区三区在线观看| 欧美三级电影在线观看| 亚洲免费观看视频| 色94色欧美sute亚洲线路一久 | 国产精品 欧美精品| 精品欧美黑人一区二区三区| 日韩精品一卡二卡三卡四卡无卡| 欧洲精品一区二区| 一区二区三区在线看| 欧美午夜精品一区| 亚洲一区二区三区四区五区黄| 在线视频欧美精品| 亚洲成人午夜影院| 欧美视频一区二区在线观看| 亚洲午夜成aⅴ人片| 91福利视频在线| 性欧美大战久久久久久久久| 欧美精品久久99| 久久国产综合精品| 久久精品一区八戒影视| 成人精品高清在线| 亚洲女爱视频在线| 色狠狠综合天天综合综合| 亚洲高清视频中文字幕| 欧美一区二区三区在线| 精品在线一区二区三区| 国产日产欧产精品推荐色 | 91麻豆精品国产综合久久久久久 | 欧美精品一区二区三区高清aⅴ | 日韩精品一区二区三区四区| 美女视频一区二区三区| 国产亚洲欧美激情| 91在线视频免费91| 午夜精品久久久久影视| 日韩欧美一级在线播放| 国产精品综合一区二区| 一区二区三区在线免费观看| 欧美一区午夜精品| 国产精品538一区二区在线| 亚洲人成小说网站色在线| 欧美精品少妇一区二区三区| 国产激情一区二区三区四区| 亚洲精品国产视频| 欧美大片在线观看一区| av一区二区三区四区| 亚洲 欧美综合在线网络| 久久精品亚洲精品国产欧美kt∨| a亚洲天堂av| 日韩成人精品视频| 国产精品美女久久久久av爽李琼| 欧美剧情片在线观看| 国产精品1024| 日韩成人精品在线观看| 亚洲特黄一级片| 日韩一区二区电影| 91麻豆视频网站| 国内久久婷婷综合| 天天色天天爱天天射综合| 国产欧美视频一区二区三区| 欧美人牲a欧美精品| eeuss鲁一区二区三区| 激情久久五月天| 亚洲资源中文字幕| 国产精品福利一区二区三区| 欧美xxx久久| 精品视频一区三区九区| 波多野结衣欧美| 黄色小说综合网站| 日韩av成人高清| 亚洲一区二区三区视频在线| 国产精品久久久久久久久免费樱桃 | 97国产精品videossex| 国产一区二区影院| 免播放器亚洲一区| 亚洲.国产.中文慕字在线| 亚洲日本青草视频在线怡红院| 久久久99免费| 欧美tk丨vk视频| 日韩欧美美女一区二区三区| 欧美久久一区二区| 欧美性欧美巨大黑白大战| 91片黄在线观看| 91在线观看视频| 99国产精品一区| 91同城在线观看| 97精品电影院| 色香蕉成人二区免费| 一本色道久久综合亚洲aⅴ蜜桃 | 国产精品久久福利| 久久女同精品一区二区| 精品国产乱码久久久久久浪潮 | 日韩欧美在线123| 欧美人狂配大交3d怪物一区| 在线精品亚洲一区二区不卡| 色综合色综合色综合色综合色综合 | 亚洲视频网在线直播| 亚洲国产精品精华液ab| 久久香蕉国产线看观看99| 欧美成人一区二区三区片免费| 日韩一区二区三区三四区视频在线观看 | 日本最新不卡在线| 日韩av中文字幕一区二区| 日韩电影在线看| 极品美女销魂一区二区三区免费 | 国产亚洲精品超碰| 国产欧美综合在线| 中文字幕人成不卡一区| 亚洲精品久久嫩草网站秘色| 亚洲成人免费看| 日本少妇一区二区| 国产一区二区在线观看免费| 国产成人午夜99999| 99视频精品在线| 在线视频你懂得一区| 91精品国产色综合久久| www国产成人免费观看视频 深夜成人网| 久久在线观看免费| 国产精品精品国产色婷婷| 一区二区三区在线视频观看58| 日韩av中文字幕一区二区 | 亚洲乱码中文字幕| 夜夜嗨av一区二区三区| 毛片基地黄久久久久久天堂| 成人丝袜18视频在线观看| 欧美在线一二三| 欧美精品一区二区在线播放| 亚洲理论在线观看| 麻豆一区二区三| 色婷婷av一区二区三区软件| 日韩一区二区电影| 亚洲日本va午夜在线影院| 美国欧美日韩国产在线播放| 色综合一个色综合亚洲| 日韩欧美国产高清| 亚洲免费在线看| 国产麻豆日韩欧美久久| 欧美日韩中字一区| 国产午夜精品久久久久久免费视| 亚洲一区免费观看| 粉嫩aⅴ一区二区三区四区| 欧美日韩视频一区二区| 国产精品天干天干在线综合| 青青草国产成人av片免费 | 国产成人av电影在线观看| 在线视频国产一区| 中文字幕欧美激情一区| 日韩综合一区二区| a4yy欧美一区二区三区| 欧美精品一区二区在线观看| 亚洲高清不卡在线观看| 99re这里只有精品首页| 久久尤物电影视频在线观看| 日韩综合小视频| 欧美亚洲综合久久| 中文字幕制服丝袜一区二区三区| 精品一区二区在线视频| 7777精品伊人久久久大香线蕉的 | 激情伊人五月天久久综合| 精品视频在线免费观看| 亚洲素人一区二区| 成人综合在线观看| 欧美大片日本大片免费观看| 午夜成人免费电影| 在线视频你懂得一区二区三区| 国产精品国产三级国产普通话99 | 2017欧美狠狠色| 日本vs亚洲vs韩国一区三区二区| 一本久道中文字幕精品亚洲嫩| 国产欧美日韩不卡| 国产剧情av麻豆香蕉精品| 精品国免费一区二区三区| 日韩国产欧美在线观看| 欧美图片一区二区三区| 一区二区久久久久久| 欧洲视频一区二区| 一区二区三区在线视频免费观看| 色偷偷久久一区二区三区| 亚洲六月丁香色婷婷综合久久 | 中文字幕精品三区|