On 2014-08-12 17:34, Bernhard Reiter wrote:
+void * WINAPI ImageDirectoryEntryToDataEx( void *base, BOOL image, unsigned short dir,
unsigned long *size, PIMAGE_SECTION_HEADER *section );
BOOLEAN is not BOOL (neither on Windows nor on Wine). LONG is not long (on Wine). (Including dbghelp.h would complain about this. Not sure why you're not doing that, but I haven't looked in detail)
if(thunk->u1.Ordinal & IMAGE_ORDINAL_FLAG)
{
/* Ordinal, i.e. unnamed function. Not sure if/how to pass this on to StatusRoutine... */
/* DWORD ordinal = (DWORD) (thunk->u1.Ordinal & (~IMAGE_ORDINAL_FLAG)); */
}
Most functions I know simply do ((PCSTR)(DWORD_PTR)ordinal) to represent ordinals (e.g. GetProcAddress). That's just a guess though, I know nothing about this function.
Best, Thomas