Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];




Вниз

Создание окна при помощи WinAp 


solo   (2002-01-18 01:45) [0]

Люди подскажите: попробовал писать в дельфи на чистом WinApi. Сделал так: Создал новый проект => Удалил форму => Написал в файле проекта код создающий главную форму. Размер приложения зашкалил за 280кБ. Как этого избежать?



Almaz   (2002-01-18 02:25) [1]

Из uses модуль Forms удалить не забыли ?

Удачи.



Almaz   (2002-01-18 02:49) [2]

Примера ради, нижеследующий код будучи скомпилированным в D5 дает исполняемый файл размером 17 кбайт.

program WinAPI;

uses Windows, Messages;

function WndProc(hWnd: HWnd; uMsg: Integer; wParam: WParam; lParam: LPARAM): Integer; stdcall;
begin
case uMsg of
WM_CLOSE:
begin
PostQuitMessage(0);
Result := 0;
end else
Result := DefWindowProc(hWnd, uMsg, wParam, lParam);
end;
end;

var
WndClass : TWndClass;
Msg: TMsg;
Wnd: HWND;
begin
FillChar(WndClass, SizeOf(WndClass), 0);
with WndClass do
begin
style := CS_VREDRAW or CS_HREDRAW;
lpfnWndProc := @WndProc;
hCursor := LoadCursor(0, IDC_ARROW);
hbrBackground := GetStockObject(WHITE_BRUSH);
lpszClassName := "MySimpleClass";
hInstance := SysInit.HInstance;
end;
if RegisterClass(WndClass) <> 0 then
begin
Wnd := CreateWindow("MySimpleClass", "My window",
WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, 0, 0, hInstance, nil);
if Wnd <> 0 then
begin
ShowWindow(Wnd, SW_SHOWNORMAL);
while GetMessage(Msg, 0, 0, 0) do
begin
TranslateMessage(Msg);
DispatchMessage(Msg);
end;
end;
end;
end.


Удачи.



solo   (2002-01-18 14:13) [3]

Народ, конечно я отключил VCL(я понимаю что они вес дают), из модулей у меня подключено только Windows и Messages. Но вот какая фишка: вчера до 3-х ночи бился, чуть голову не сломал - 284кБ. Сегодня откомпилировал тот же код - 16,5кБ. Ну правда я с утра Windows переустановил :-D .




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.019 c
7-57533           MAG                   2001-12-16 02:08  2002.03.18  
Привет Мастера !!!


1-57351           Georg                 2002-03-04 16:16  2002.03.18  
DrawGrid


1-57346           Alexklink             2002-03-04 11:39  2002.03.18  
Проверка орфографии


7-57530           Angar                 2001-11-26 11:52  2002.03.18  
Как можно программно отключить стандартный драйвер COM-порта в Win98/Me/NT/2000 ?


1-57369           Priz_Datiy            2002-03-04 11:43  2002.03.18  
Проблеммы с StrToInt