LPBYTE FindStockDay(LPBYTE pData,long MaxNum,UINT py,UINT time)
{
LPBYTE p = pData+py+0x18;
for (int i = 0 ; i <(0xc00-0x18)/4 ; i++)
{
UINT a = *(UINT*)(p+i*4);
UINT b = a*0xc00 ;
if (a < MaxNum)
{
int a1 = sizeof(TDXL2);
LPBYTE p2 = pData+b;
for (int j = 0 ; j < 0xc00/sizeof(TDXL2); j ++)
{
LPBYTE ptdx = p2+j*sizeof(TDXL2);
if (*(UINT*)(ptdx) == time)
{
return ptdx;
}
}
}
}
return FALSE;
}
PBYTE FindStock(LPBYTE pData,long nFileLen,TCHAR* pCh)
{
if ( nFileLen % (signed int)0xC00 )
{
return FALSE;
}
int Num = nFileLen/0xc00;
for (int i = 0 ; i < Num; i++)
{
LPBYTE p = pData+i*0xc00;
if (*(DWORD*)(p+4) != 0x1770
||*(signed int*)(p) >= (signed int)0x1770
||*(DWORD*)(p+8) != Num)
{
if (!strcmp((char*)(p),pCh))
{
return p;
}
}
}
return FALSE;
}
uj5u.com熱心網友回復:
代碼基本可以對等翻譯,windows的型別系統中LPBYTE和PBYTE是一回事(早期16位時代不一樣,LPBYTE是32位指標,PBYTE是16位指標),和Delphi中的PByte一樣。UINT是32位無符號整數。TCHAR根據是否unicode版本變化,WideChar或者AnsiChar。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/42790.html
標籤:語言基礎/算法/系統設計
上一篇:注冊類
