Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > GetMappedFileName на х64


Автор: GetProcAddress 9.6.2013, 20:48
Подскажите пож. почему на х32 со сборкой проблем нет, а на х64  линкер выдает:

1>NinaDoc.obj : error LNK2001: неразрешенный внешний символ "GetMappedFileNameW"

Код

void* CNinaDoc::GetImageBase()
{
    std::wstring str;
    WCHAR pszFilename[MAX_PATH+1];
    DWORD64 i=0;
    while(Section[i].Address!=0)
    {
        if(Section[i].Image==TRUE)
        {
            GetMappedFileName(pi.hProcess,(LPVOID)Section[i].Base,pszFilename,MAX_PATH);
            str=pszFilename;
            DWORD sss=str.rfind(mFileName);
            if(sss!=0)return (LPVOID)Section[i].Base;
        }
        i++;
    }
    return 0;
}

Автор: akizelokro 14.6.2013, 21:18
GetMappedFileNameW - версия функции для wchar. судя по названию.
Проверь наборы симоволов, используемые для 32х и 64x версий проекта.

А сколько раз уже твердили миру, что желательно использовать TCHAR?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)