View Single Post
  #7  
Old 09-20-2004, 17:07
tydit
 
Posts: n/a
Hi
I tested it, and I founded the bug.
I used this code:

Data = (PIMAGE_RESOURCE_DATA_ENTRY) addr;
Data->OffsetToData = NewRsrcData;
NewRsrcData+=Data->Size;

But in ASM 'Data->Size' had numbers (0268h,014h,01E2h,...) and here were the problem.
'Data->OffsetToData' must end only with numbers 0 and 8. Then it work fine

My new code:

Data = (PIMAGE_RESOURCE_DATA_ENTRY) addr;
Data->OffsetToData = NewRsrcData;
NewRsrcData+=((int)(Data->Size/8))*8;
if ((Data->Size%8)!=0) NewRsrcData+=8;
Reply With Quote