unresolved external при использовании моего аллокатора
От: lol4ever  
Дата: 27.09.06 14:03
Оценка:
Надо: скормить CHeapPtr свой аллокатор следующего содержания:
#pragma once
#include <Wincrypt.h>

class CCryptAllocator
{
public:
    static void* Reallocate(void* p, size_t nBytes) throw()
    {
        return CryptMemRealloc(p, static_cast<ULONG>(nBytes));
    }
public:
    static void* Allocate(size_t nBytes) throw()
    {
        return ::CryptMemAlloc(static_cast<ULONG>nBytes);
    }
public:
    static void Free(void* p) throw()
    {
        CryptMemFree(p);
    }
};


Проблема: а он его не ест! Причем не ест следующим образом:
CryptoModule.obj : error LNK2019: unresolved external symbol __imp__CryptMemFree@4 referenced in function "public: static void __cdecl CCryptAllocator::Free(void *)" (?Free@CCryptAllocator@@SAXPAX@Z)
CryptoModule.obj : error LNK2019: unresolved external symbol __imp__CryptMemAlloc@4 referenced in function "public: static void * __cdecl CCryptAllocator::Allocate(unsigned int)" (?Allocate@CCryptAllocator@@SAPAXI@Z)
Debug\EosCryptoSvc.exe : fatal error LNK1120: 2 unresolved externals


Что я делаю не так? Почему он не ругается на CryptMemRealloc?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.