![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 26.08.2007
Сообщений: 5
|
![]()
помогите пожалуйста, где может быть у меня ошибка не получается компилировать.
delphi выдает такую ошибку: [Error] Unit1.pas(16): Statements not allowed in interface part [Error] Unit1.pas(21): Statements not allowed in interface part [Error] Unit1.pas(22): Undeclared identifier: 'result' [Error] Unit1.pas(22): Undeclared identifier: 'hwn' [Error] Unit1.pas(22): Undeclared identifier: 'lpr' [Error] Unit1.pas(23): Incompatible types [Error] Unit1.pas(26): Incompatible types [Error] Unit1.pas(27): Undeclared identifier: 'VK' [Error] Unit1.pas(40): ':=' expected but ':' found [Error] Unit1.pas(47): Illegal character in input file: '"' ($22) [Error] Unit1.pas(47): Incompatible types: 'Cardinal' and 'Pointer' [Error] Unit1.pas(55): Undeclared identifier: 'GetMassege' [Error] Unit1.pas(60): Record, object or class type required [Error] Unit1.pas(62): 'END' expected but end of file found [Error] Unit1.pas(15): Unsatisfied forward or external declaration: 'DoExit' [Error] Unit1.pas(20): Unsatisfied forward or external declaration: 'WindowProc' [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas' я не понял в чем дело то есть не понял где у меня ошибка. unit Unit1; interface uses Windows, Messages, SysUtils; {F$R *.RES} var instance: HWnd; windowclass: TWndClass; handle: HWnd; msg: Tmsg; // процедура выхода из программы procedure DoExit; begin halt; end; // функция обработки событий windows function WindowProc (Hwn,msg,wpr,lpr: longint): longint; stdcall; begin result:=defwindowproc(hwn,msg,wpr,l pr); if msg=wm_destroy then DoExit; if msg=wm_keyDown then if wpr=VK ESCAPE then poExit; end; //отсюда начинается выполнение программы begin // получаем описатель модуля instance :=GetModuleHandle(nil); //заполняем структуру WindowClass WindowClass.style:=CS_Hredraw or CS_VRedraw; windowClass.Lpfnwndproc:=@windowPro c; windowClass.Hinstance:=Instance; windowClass.HbrBackground:=color_bt nface; windowClass.LpszClassName:'DX'; windowClass.Hcursor:=LoadCursor(0,I DC_ARROW); //Регистрируем новый класс RegisterClass (WindowClass); //Создаем окно Handle:=CreatewindowEx (0,'DX',",WS_POPUP,1,1, 200, 200,0,0,Instance,nil); ShowWindow(Handle,SW_SHOW); UpdateWindow (Handle); // здесь можно производить инициализацию //Цикл обработки сообщений while (GetMassege(msg,0,0,0)) do begin translatemessage (msg); dispatchmessage (msg); end; end. |
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Для начала нужно понять что ты хош написать, потому как этот код ни консольный ни форменный, в любом случае обьясни задачу
В любом случае interface здесь лишний
I'm learning to live...
Последний раз редактировалось Stilet; 26.09.2007 в 10:56. Причина: Поправочка |
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,051
|
![]()
А где объявления переменных 'hwn' 'lpr' 'VK' ?
|
![]() |
![]() |
![]() |
#4 |
python developer
Пользователь Подтвердите свой е-майл
Регистрация: 30.11.2006
Сообщений: 81
|
![]()
Во первых — пиши этот код в файл проекта ( .dpr)
Во вторых — убери unit Unit1; и interface сам код должен быть например таким: Код:
Границы расширяет тот, кто выходит за них.
|
![]() |
![]() |
![]() |
#5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
А так меньше кода (вроде) :
program minwnd; uses Windows, Messages; const WND_CLASS_NAME = 'MinWND'; var wndclass: TWndClass; msg: TMsg; function WndProc(hWnd,msg,wParam,lParam: Cardinal): LongInt; stdcall; begin Result := 0; case msg of WM_DESTROY: PostQuitMessage(0); else Result := DefWindowProc(hWnd,msg,wParam,lPara m); end; end; begin with wndclass do begin hInstance := hInstance; lpszClassName := WND_CLASS_NAME; lpfnWndProc := @WndProc; end; RegisterClass(wndclass); CreateWindow(WND_CLASS_NAME,WND_CLA SS_NAME,WS_SYSMENU or WS_VISIBLE, 10,10,100,100,0,0,HInstance,nil); while GetMessage (msg, 0, 0, 0) do DispatchMessage (msg); end.
I'm learning to live...
|
![]() |
![]() |
![]() |
#6 |
Регистрация: 26.08.2007
Сообщений: 5
|
![]()
нет почему то ругается USES
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 26.08.2007
Сообщений: 5
|
![]()
не получилась короче у меня попробую другое написать
![]() ![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите пожалуйста!!! | Esenin | Помощь студентам | 1 | 21.06.2008 01:45 |
Помогите пожалуйста | Niki | Помощь студентам | 4 | 07.06.2008 08:30 |
помогите пожалуйста | pelsh | Помощь студентам | 2 | 21.12.2007 00:26 |