#1753070: Enable that makensis and its related utilities can be built natively for 64-bit systems
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6040 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
b402798885
commit
8ab72b9ece
20 changed files with 133 additions and 73 deletions
|
@ -29,7 +29,7 @@
|
|||
#include "dirreader.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
# include <WinNT.h>
|
||||
# include <winnt.h>
|
||||
#else
|
||||
# include <sys/stat.h>
|
||||
#endif
|
||||
|
@ -136,8 +136,8 @@ void Plugins::GetExports(const tstring &pathToDll, bool displayInfo)
|
|||
DWORD prd = FIX_ENDIAN_INT32(sections[i].PointerToRawData);
|
||||
PIMAGE_EXPORT_DIRECTORY exports = PIMAGE_EXPORT_DIRECTORY(&dlldata[0] + prd + ExportDirVA - va);
|
||||
DWORD na = FIX_ENDIAN_INT32(exports->AddressOfNames);
|
||||
unsigned long *names = (unsigned long*)((unsigned long) exports + (char *) na - ExportDirVA);
|
||||
for (unsigned long j = 0; j < FIX_ENDIAN_INT32(exports->NumberOfNames); j++)
|
||||
LPDWORD names = (LPDWORD)((ULONG_PTR)exports + na - ExportDirVA);
|
||||
for (DWORD j = 0; j < FIX_ENDIAN_INT32(exports->NumberOfNames); j++)
|
||||
{
|
||||
const string name = string((char*)exports + FIX_ENDIAN_INT32(names[j]) - ExportDirVA);
|
||||
const tstring signature = dllName + _T("::") + name;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue