Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

unresolved external symbol _WinMain@16

629
28 февраля 2002 года
TekiL
19 / / 20.09.2000
Сейчас поставил win98. создаю win32application, пишу скажем код (Hello World типа). Компил проходит без ошибок. Делаю build, выдаёт следующее
error LNK2001 unresolved external symbol [EMAIL]_WinMain@16[/EMAIL]
и
atal error LNK1120 1 unresolved externals
помогите, что тут не так?!
спасибо

[ Это Сообщение было отредактировано mike в 2002-02-28 0955 ]
629
28 февраля 2002 года
TekiL
19 / / 20.09.2000
Дико извиняюсь, проблема саморасосалась:
нужно было создавать console app. кстати может кто по ходу разницу обьяснит мне дураку?
380
01 марта 2002 года
Arestov
285 / / 20.09.2000
Цитата:

On 2002-02-28 0327, TekiL wrote
Дико извиняюсь, проблема саморасосалась
нужно было создавать console app. кстати может кто по ходу разницу обьяснит мне дураку?



Ну на себя не наговаривай

Фишка в том, что точка входа в прогу для любого языка (не языка ассемблера) вызывается стартовым кодом, который линкуется при компоновке. По соглашениям Си это main() ей передаются некоторые параметры. Когда разрабатывали Windows, решили расширить параметры main и ф-цию. переименовали в WinMain и передаются ей совсем другие параметры...
Итак, прога под Windows должна иметь WinMain, её и искал компоновщик, выдавая error. Чтобы было возможно писать проги с Сишным main’ом, достаточно добавить WinMain следующего вида

long _stdcall WinMain(...)
{
AllocConsole();
main(__argc, __argv, __envp);
FreeConsole()
}

Что и делается когда создается проект Win32 Console Application.

При этом AllocConsole открывает "текстовое" окно ala DOS

Вот такие делишки

629
01 марта 2002 года
TekiL
19 / / 20.09.2000
ага ясно. т.е. грубо-говоря то что создает vc если сделать Hello world app. ну грубо говоря.
вопрос кстати. обязательно-ли понимать у суметь обьяснить каждую строку программы которую создаёт vc (например если создать mfc app, vc сделает некоторое кол-во классов и т.д. и т.п.)? и может-ли это пригодится? или просто как последнему ламеру набирать свой каод там где написано TO DO: etc.. ?
587
01 марта 2002 года
Lion
42 / / 20.04.2000
Цитата:

On 2002-02-28 2246, TekiL wrote
обязательно-ли понимать у суметь обьяснить каждую строку программы которую создаёт vc (например если создать mfc app, vc сделает некоторое кол-во классов и т.д. и т.п.)? и может-ли это пригодится? или просто как последнему ламеру набирать свой каод там где написано TO DO etc.. ?


Не обязательно, но КРАЙНЕ желательно. Иначе иногда не возможно затавить прогу делатьто, что надо тебе.
Но ты не стесняйся, начинай писать, понимание придет в процессе.

629
01 марта 2002 года
TekiL
19 / / 20.09.2000
ыгы!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог