Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 23:48   #1
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию Выскакиевает ошибка.

Хоть убейся головой об стенку, не могу понять где ошибка, может кто-то поможет найти лажу.
Вижуал Си.

Вот сам код:

Код:
#include <windows.h>

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                    PSTR szCmdLine, int iCmdShow)
     {
     static char szAppName[] = "HelloWin" ;
     HWND        hwnd ;
     MSG         msg ;
     WNDCLASSEX  wndclass ;

     wndclass.cbSize        = sizeof (wndclass) ;
     wndclass.style         = CS_HREDRAW | CS_VREDRAW ;
     wndclass.lpfnWndProc   = WndProc ;
     wndclass.cbClsExtra    = 0 ;
     wndclass.cbWndExtra    = 0 ;
     wndclass.hInstance     = hInstance ;
     wndclass.hIcon         = LoadIcon (NULL, IDI_APPLICATION) ;
     wndclass.hCursor       = LoadCursor (NULL, IDC_ARROW) ;
     wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
     wndclass.lpszMenuName  = NULL ;
     wndclass.lpszClassName = szAppName ;
     wndclass.hIconSm       = LoadIcon (NULL, IDI_APPLICATION) ;

     RegisterClassEx (&wndclass) ;

     hwnd = CreateWindow (szAppName,         // window class name
		            "The Hello Program",     // window caption
                    WS_OVERLAPPEDWINDOW,     // window style
                    CW_USEDEFAULT,           // initial x position
                    CW_USEDEFAULT,           // initial y position
                    CW_USEDEFAULT,           // initial x size
                    CW_USEDEFAULT,           // initial y size
                    NULL,                    // parent window handle
                    NULL,                    // window menu handle
                    hInstance,               // program instance handle
		            NULL) ;		             // creation parameters

     ShowWindow (hwnd, iCmdShow) ;
     UpdateWindow (hwnd) ;

     while (GetMessage (&msg, NULL, 0, 0))
          {
          TranslateMessage (&msg) ;
          DispatchMessage (&msg) ;
          }
     return msg.wParam ;
     }

LRESULT CALLBACK WndProc (HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
     {
     HDC         hdc ;
     PAINTSTRUCT ps ;
     RECT        rect ;

     switch (iMsg)
          {
          case WM_CREATE :
               PlaySound ("trybka.wav", NULL, SND_FILENAME | SND_ASYNC) ;
               return 0 ;

          case WM_PAINT :
	           hdc = BeginPaint (hwnd, &ps) ;

               GetClientRect (hwnd, &rect) ;

               DrawText (hdc, "А, кто-то в трубочку : Звяк-звяк-звяк, а мы за трубочку хвать-хвать-хвать", -1, &rect,
			             DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;

	           EndPaint (hwnd, &ps) ;
               return 0 ;

          case WM_DESTROY :
               PostQuitMessage (0) ;
               return 0 ;
          }

     return DefWindowProc (hwnd, iMsg, wParam, lParam) ;
     }
А, вот ошибка.
Код:
--------------------Configuration: trybka1 - Win32 Release--------------------
Compiling...
trybka1.C
Linking...
trybka1.obj : error LNK2001: unresolved external symbol __imp__PlaySoundA@12
LIBC.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Release/trybka1.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.

trybka1.exe - 3 error(s), 0 warning(s)
--------------------Configuration: trybka1 - Win32 Debug--------------------
Linking...
trybka1.obj : error LNK2001: unresolved external symbol __imp__PlaySoundA@12
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/trybka1.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.

trybka1.exe - 3 error(s), 0 warning(s)
прошу не пинать особо ногами, только становлюсь на путь Си, с паскалем и с Делфи уже немного знаком.
Заранее спасибо за помощь.

Последний раз редактировалось Небесный; 03.06.2009 в 23:55.
Небесный вне форума Ответить с цитированием
Старый 04.06.2009, 00:13   #2
__STDC__
Участник клуба
 
Аватар для __STDC__
 
Регистрация: 16.03.2009
Сообщений: 1,013
По умолчанию

Нууу... допустим вот это
Код:
 wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
исправить так
Код:
     wndclass.hbrBackground = (HBRUSH)(WHITE_BRUSH);
еще проблема с
Код:
               PlaySound (TEXT("SystemStart"), NULL, SND_FILENAME | SND_ASYNC) ;
я просто закомментировал строку.. не знаю, может библиотеки какой не хватает.. у меня dev-cpp
Uguu~
__STDC__ вне форума Ответить с цитированием
Старый 04.06.2009, 00:31   #3
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

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

Проблема при Build trybka1.exe

Код:
--------------------Configuration: trybka1 - Win32 Debug--------------------
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/trybka1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

trybka1.exe - 2 error(s), 0 warning(s)
Чуствую у меня не только одной библиотеки не хватает. )))
Небесный вне форума Ответить с цитированием
Старый 04.06.2009, 00:49   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

С учетом вышеуказанных поправок в 6-м Билдере тоже компилится..

Цитата:
unresolved external symbol _main
Если не ошибаюсь, эта штука возникает, если создать Windows-проект, а код вставить от консольного.. Или наоборот.
Может, в этом дело?
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 04.06.2009, 01:04   #5
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

Ну, я мало что могу в это пока сказать, только вот сел за Вижуал Си, а так уже с Делфи пару лет балуюсь. )))

Исходники были скачаные, а чем какой проект этот создан, так и не понял.
Почему именно эти исходники - лабы в универе. ))) Думаю дальше рассказывать не нужно.
Небесный вне форума Ответить с цитированием
Старый 06.06.2009, 15:22   #6
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

Дошел до такого момента и дальше ступор, конфликт с библиотекой происходит.

Код:
--------------------Configuration: sud1 - Win32 Debug--------------------
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/sud1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

sud1.exe - 2 error(s), 0 warning(s)
подскажите куда дальше копать.
Небесный вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибки Arcueid1691 Паскаль, Turbo Pascal, PascalABC.NET 15 13.02.2011 15:05
Ошибки Jasper92 Компьютерное железо 6 10.04.2009 19:56
Ошибки delphin100 Операционные системы общие вопросы 12 17.04.2008 14:15
Ошибки Terran Общие вопросы Delphi 3 05.02.2008 20:47