Ошибка при создании DLL
От: Ivanalt  
Дата: 28.06.07 11:33
Оценка:
В "Поиске" уже смотрел... вроде на мою ошибку не похоже...
может быть, конечно, эта тема не совсем для ветки MFC...

А пишет мне Visual Studio 6.0 вот такую бяку:
Linking...
   Creating library ReleaseUMinDependency/Modbus_Side.lib and object ReleaseUMinDependency/Modbus_Side.exp
LIBCMT.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
ReleaseUMinDependency/Modbus_Side.dll : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

Modbus_Side.dll - 2 error(s), 0 warning(s)


Знающие люди говорят, что ошибка может связана с этой функцией
BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )


Визуал студио генерит такую кучу файлов, что я в половину даже не заглядываю,
но нашел в файлах проги следующий текст:
BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /*lpReserved*/)
{
    if (dwReason == DLL_PROCESS_ATTACH)
    {
        _Module.Init(ObjectMap, hInstance, &LIBID_MODBUS_SIDELib);
        DisableThreadLibraryCalls(hInstance);
    }
    else if (dwReason == DLL_PROCESS_DETACH)
        _Module.Term();
    return TRUE;    // ok
}


Код этот сгенерен автоматически... я вообще не знал о его существовании... и привык считать, что автомат не ошибается...

Может быть, есть смысл поменять WINAPI на APIENTRY ???


03.07.07 10:32: Перенесено модератором из 'MFC' — SchweinDeBurg
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.