Вниз
Скачать: CL | DM;

От VCL к API   Найти похожие ветки 

← →
Материнская зарплата   (2003-04-30 03:31) [0]

Подкиньте кто нибудь статейки и ссылки по WinAPI. Я решил сделать большой шаг - полностью перейти на WinAPI


← →
Serious Sam   (2003-04-30 09:32) [1]

Н-да. "Смелый экперимент молодых троллей"
С зарплатой придётся попрощаться...


← →
pasha676   (2003-04-30 10:07) [2]

Переход полностью на API такой же идиотизм, как заявление "хочу перейти полностью на машинный код". Имхо конечно.


← →
Axis_of_Evil ©   (2003-04-30 10:18) [3]

Ежели VCL дано, пользуйся.


← →
il   (2003-04-30 11:20) [4]

Хотя, если ты раньше вирусы на VCL писал, то это, пожалуй, здравый шаг :)


← →
han_malign ©   (2003-04-30 11:22) [5]

Бей провокаторов...


← →
Sergey13 ©   (2003-04-30 11:39) [6]

2Материнская зарплата (30.04.03 03:31)
>Подкиньте кто нибудь статейки и ссылки по WinAPI. Я решил сделать большой шаг - полностью перейти на WinAPI
Т.е. ты еще ничего не читал по теме, а перейти уже решился? Оригинально. 8-)


← →
АлексейК   (2003-04-30 11:42) [7]

Бурные и громкие апплодисменты.....
Хотя дисассемблируется такой код IDE, просто прелесно, усе названия апишных ф-ий как на ладони.


← →
Ru ©   (2003-04-30 12:01) [8]

www.atrussk.ru - если щас работает


← →
DVM ©   (2003-04-30 12:22) [9]


> Переход полностью на API такой же идиотизм, как заявление
> "хочу перейти полностью на машинный код". Имхо конечно.

Ничего "идиотского" в этом нет. Идиотами становятся те, кто всю жизнь пишет программы на языке высокого уровня да еще с использованием каких-либо высокоуровневых библиотек, совершенно не задумываясь о том, как работает операционная ситема, для которой он пишет программы или как работает процессор. И при этом считают себя крутыми программерами.



← →
Игорь Шевченко ©   (2003-04-30 12:31) [10]


> И при этом считают себя крутыми программерами.


И имеют на то полное основание. Так как они свои задачи программируют, и поверь, делают это достаточно хорошо. А считать себя крутым программером, от того, что ты знаешь десяток или сотню функций WinApi - это больший идиотизм.


← →
DVM ©   (2003-04-30 12:54) [11]


> Игорь Шевченко

При всем моем уважении к голубому значку, осмелюсь поспорить.
Я не о том, чтобы знаешь десяток или сотню функций WinApi, а о том, что надо понимать внутренне устройство той системы и той машины для которой пишешь программы. Современные языки программирования (особенно Delphi) навязывают такой стиль программирования (проектирования?), что программирующий в ней (а особенно новичок) порой не имеет даже представления о том как работает его программа, как работает система, как работает процессор. Теряются (не развиваются) алгоритмические навыки.
К тому же обходится только VCL можно до поры до времени. Так или иначе с WinApi человек придет при решении более сложных задач.
VCL ограничен в возможностях. Не все можно сделать используя VCL.

Но Delphi, конечно же, превосходная среда программирования, VCL - отличная библиотека.

P.S. Себя я к программистам не отношу (и программистом не работаю), но программирование - это мое, что-ли хобби. Но с некоторых пор я стал сторонником программирования на "чистом" языке, без VCL/MFC - это тоже мое хобби.

Насчет идиотов я погорячился (ответ автору вопроса), ведь сам я тоже использую VCL :)


← →
Danilka ©   (2003-04-30 12:55) [12]

Если не ошибаюсь, в форуме "ВинАПИ" наибольшее кол-во ответов у Игоря Шевченко...

По-моему любая крайность - плохо.
Изобретать велосипед, делать то, что уже давно сделано - глупо.
Но и незнание того, что происходит на самом деле, за пределами VCL-обертки, в этом тоже нет ничего хорошего.


← →
DVM ©   (2003-04-30 13:04) [13]


> Danilka

Полностью согласен! Кроме одного:

> Изобретать велосипед, делать то, что уже давно сделано -
> глупо.

Можно изобрести ЛУЧШЕ!


← →
Игорь Шевченко ©   (2003-04-30 13:12) [14]

Danilka © (30.04.03 12:55)

В любом случае, переходить на "чистый API" - это глупо.

> Но и незнание того, что происходит на самом деле, за пределами
> VCL-обертки, в этом тоже нет ничего хорошего.


А зачем ? Умный Borland специально придумал обертку вокруг функций и механизмов WinAPI, для того, чтобы программист мог сосредоточиться на своей задаче и своем алгоритме, а не писал дополнительный, не имеющий никакого отношения к его задаче, код для того, чтобы пользоваться возможностями Windows.


← →
DVM ©   (2003-04-30 13:18) [15]


> А зачем ?

Рухнет Borland - и такой "программист" останется не у дел. Все таки Delphi - продукт одной компании, дела которой не так хороши как у Microsoft. Windows писана все таки на C (даже не ++ в большей своей части).


← →
stone ©   (2003-04-30 13:20) [16]


> Рухнет Borland - и такой "программист" останется не у дел.
>

С какой стати? Программисты, они в разных областях работают, многие из этих областей никакого отношения к АПИ не имеют


← →
DVM ©   (2003-04-30 13:27) [17]


> С какой стати? Программисты, они в разных областях работают,
> многие из этих областей никакого отношения к АПИ не имеют

Вот именно, В РАЗНЫХ ОБЛАСТЯХ! И программист должен знать (по крайней мере разбираться) не только в коконе VCL, который изолировал его от мира.


← →
Иван Шихалев ©   (2003-04-30 13:29) [18]

> надо понимать внутренне устройство той системы
> и той машины для которой пишешь программы.


Тот, кто понимает - полностью на WinAPI не переходит. Даже если не может воспользоваться VCL (как я на Free Pascal"е).


← →
pasha676   (2003-04-30 13:30) [19]

2DVM

Не согласен. Конечно АПИ знать надо, и систему тоже. Но писать все проекты на чистом АПИ - это извращение и садомазохизм.
Я например знаю АПИ в необходимом мне объеме. Если чего не знаю, смотрю хэлпы и справочники. Пока хватало.


> Рухнет Borland - и такой "программист" останется не у дел.
> Все таки Delphi - продукт одной компании, дела которой не
> так хороши как у Microsoft. Windows писана все таки на C
> (даже не ++ в большей своей части).


Если ты такой глобальный программист, то как ты можешь привязываться исключительно в виндоуз? Под другими системами тоже надо программить.

ЗЫ Уже давно пришел к мнению, что чаще всего удобней связываться с внешними устройствами или железками через Си или API, а интерфейс делать на дельфи. И даже не пытайся меня убедить, что для проги решения квадратного уравнения окно, кнопки и др. элементы надо строго писать на API. Это маразм.


← →
MalkoLinge ©   (2003-04-30 13:40) [20]


> > Изобретать велосипед, делать то, что уже давно сделано
> -

В основном так говорят люди, не способные этот велосипед изобрести :)



← →
Игорь Шевченко ©   (2003-04-30 13:41) [21]

DVM © (30.04.03 13:27)

Вот был Windows 3.1, потом Windows 95. Всем, кто писал "на API" пришлось переучиваться гораздо больше, чем тем, кто писал на языках высокого уровня.


← →
DVM ©   (2003-04-30 13:41) [22]


> Иван Шихалев

Да я и не ратую за отказ от VCL - наоборот. Я просто хочу сказать, что нельзя не замечать того, что находится вне VCL, хотя Delphi такую возможность и предоставляет.


> pasha676


> Если ты такой глобальный программист, то как ты можешь привязываться
> исключительно в виндоуз? Под другими системами тоже надо
> программить.

Разумеется. А разве ни кого не смущает тот факт, что все мы с вами поставлены в зависимость от одной корпорации (MS или Borland)?


> И даже не пытайся меня убедить, что для проги решения квадратного
> уравнения окно, кнопки и др. элементы надо строго писать
> на API. Это маразм.

Я и не буду пытаться. Но уметь сделать что-то без VCL надо!


← →
Игорь Шевченко ©   (2003-04-30 13:44) [23]

DVM © (30.04.03 13:41)


> Я и не буду пытаться. Но уметь сделать что-то без VCL надо!


Зачем ? Реальный пример нужности такой задачи можешь привести ?


← →
Mike Kouzmine ©   (2003-04-30 13:44) [24]

Уметь и делать - разные вещи. Я, например, умею стрелять из гаубицы....


← →
DVM ©   (2003-04-30 13:47) [25]


> Игорь Шевченко



> Вот был Windows 3.1, потом Windows 95. Всем, кто писал "на
> API" пришлось переучиваться гораздо больше, чем тем, кто
> писал на языках высокого уровня.

К сожалению, здесь вы правы.


← →
DVM ©   (2003-04-30 13:48) [26]


> Mike Kouzmine

А я крючком вязать салфетки.


← →
Ru ©   (2003-04-30 13:49) [27]

>DVM © (30.04.03 13:18)

http://deep.webm.ru/forum/reply.php?num=1.2&id=4541


← →
Ru ©   (2003-04-30 13:49) [28]

>DVM © (30.04.03 13:18)

http://deep.webm.ru/forum/reply.php?num=1.2&id=4541

http://deep.webm.ru/forum/reply.php?num=1.2&id=5129


← →
Mike Kouzmine ©   (2003-04-30 13:51) [29]

DVM © (30.04.03 13:48) Счастливый.. А я так и не научился..


← →
DVM ©   (2003-04-30 14:00) [30]


> Игорь Шевченко



> Зачем ? Реальный пример нужности такой задачи можешь привести
> ?

Пожалуйста. Любая задача, в которой не требуется развитый пользовательский интерфейс, или нет вообще ни одного окна в VCL особо не нуждается.

Или вот еще пример. Я утверждаю, что нельзя применяя VCL создать окно, подобное окну Progman. Ну не работает функция SetShellWindow c VCL формами - ну хоть тресни. Бился месяц.

function SetShellWindow(hWnd: HWND): dword; stdcall; external "User32.dll" name "SetShellWindow";


← →
nikkie ©   (2003-04-30 14:02) [31]

>Игорь Шевченко
>> Я и не буду пытаться. Но уметь сделать что-то без VCL надо!
>Зачем ? Реальный пример нужности такой задачи можешь привести ?
например, надо разрабатывать на VC++.

>Вот был Windows 3.1, потом Windows 95. Всем, кто писал "на API" пришлось переучиваться гораздо больше, чем тем, кто писал на языках высокого уровня.
я под Win3.1 не писал, но мне почему-то кажется, что программирование на API практически не изменилось. расскажи, в чем проблема-то?

>pasha676
>Но писать все проекты на чистом АПИ - это извращение и садомазохизм.
ключевое слово здесь - "все". и согласиться можно только при условии, что есть выбор между VC++ и дельфи.

сам я на дельфи на чистом API не пишу. а на C - пишу. там это и легче делать, благодаря message crackers.


← →
Игорь Шевченко ©   (2003-04-30 14:09) [32]

nikkie © (30.04.03 14:02)


> я под Win3.1 не писал, но мне почему-то кажется, что программирование
> на API практически не изменилось. расскажи, в чем проблема-то?


Win32.hlp, Porting Code from 16-bit Windows to 32-bit Windows - там много интересного.


> сам я на дельфи на чистом API не пишу. а на C - пишу. там
> это и легче делать, благодаря message crackers.


Там VCL нету - вот в чем беда :)


← →
DVM ©   (2003-04-30 14:09) [33]


> nikkie


> благодаря message crackers.

да это точно.


← →
DVM ©   (2003-04-30 14:20) [34]

Короче итог:
"Кому нравится поп, а кому попова дочь!"

Автор вопроса просил ссылки и инфу о WinApi:

Книжки

"Программирование для Windows 95". Автор Ч. Петзолд.
"Азбука программирования в Win32 API". Автор П. Румянцев.
"Работа с файлами в Win32 API". Автор П. Румянцев.
"Проектирование интерфейса пользователя средствами Win32 API". Автор Ганеев.

http://www.bcbdev.ru/winapi.htm

Сайт посвященный программированию на Api в Delphi:

http://web.ict.nsc.ru/~cancel/delphi/





← →
Игорь Шевченко ©   (2003-04-30 14:25) [35]

И этого, Рихтера в список добавить. Windows для профессионалов.


← →
Mystic ©   (2003-04-30 14:45) [36]

Как всегда не назвали самое основное :)
http://msdn.microsoft.com
без остального жить можно, а без этого --- никак! ;)


← →
i-C3H7OH ©   (2003-04-30 15:01) [37]

на АПИ писать прикольно. как будто решаешь головоломку. как что с чем взаимодействует, чего перехватывать, чего возвращать.. и видеть РЕЗУЛЬТАТ. это как конструктор (для детей:). там нет ничего сложного, сверх естественного.. если знаешь основы, конечно.. основы я узнал не сразу.


ну конечно если там ч-н припрет, то быстренько создаем форму, накидаем компонентиков - это быстро и в этом огромный плюс, а потом если есть желание можно и на АПИ переделать.

я лично с ВинАпи начал ознакомится конкретно поиздевавшись над примером из книги Краснова ОпенГЛ в проектах Делфи. там в начале есть.. етого хватило, чтобы понять принцып, концепцию...


← →
pasha676   (2003-04-30 15:36) [38]

2nikkie

> ключевое слово здесь - "все". и согласиться можно только
> при условии, что есть выбор между VC++ и дельфи.

Кажется мы говорим о Дельфи. И разумеется ключевое слово "все". Иногда надо и/или удобней писать на API. Мне, например, работать с портами удобней на API. Исторически так сложилось. И вообще с железками я считаю надо работать на API и/или Си, возможно работать на API для увелечения быстродействия, уменьшения объема exe или по организационным причинам. Но как написано в топике "полностью перейти на АПИ" - нафиг нафиг.

2DMV

> Короче итог:
> "Кому нравится поп, а кому попова дочь!"

Нет. Итог - каждую задачу необходимо решать рациональными средствами. Не надо писать СУБД на ассемблере для организации домашней телефонной книги. Наиболее универсальные и гибкие подходы лежат в использовании нескольких языков для разных задач или подзадач.


← →
DVM ©   (2003-04-30 15:43) [39]


> pasha767


> в использовании нескольких языков для разных задач или подзадач.

Ну! А я о чем!


← →
Юрий Зотов ©   (2003-04-30 21:57) [40]

То, что для каждую задачу лучше всего решать наиболее подходящими для нее средствами - ну, слава Богу, к этому все же пришли.

А вот по этому пункту все же возражу:

> DVM © (30.04.03 12:54)
> Современные языки программирования (особенно Delphi)
> навязывают такой стиль программирования (проектирования?),
> что программирующий в ней (а особенно новичок) порой не имеет
> даже представления о том как работает его программа, как
> работает система, как работает процессор.

Delphi все же никому ничего не навязывает. Она экономит нам время, только и всего. Но при этом вовсе не заставляет пользоваться исключительно VCL. Хотите - пишите на чистом API, хотите - на Ассемблере. И все это в среде Delphi.

А новички... так на то они и новички, чтобы мало что понимать. Delphi здесь, вроде как, тоже ни при чем.


← →
Ihor Osov'yak ©   (2003-04-30 22:15) [41]

Да, что наиболее парадоксально. Вот, Игорь Шевченко, как бы противник програмировать на апи :-). Здесь также есть несколько стороннников апишного пронрамммирования.

Могу затеять идиотский спор, что сторонник vcl подхода даст форы любому здешнему сторонику апи на предмет знания и понимания внутренних механизмов.
И кажется мне, что я этот спор выиграю.


← →
Плохой человек   (2003-04-30 22:49) [42]

Из будущего:

HEX is DEAD.
ASM is DEAD.
API is DEAD.
ZIP is DEAD.
BYTE is DEAD.
BASIC is DEAD.
OLMER is not DEAD.


← →
Ihor Osov'yak ©   (2003-04-30 22:56) [43]

в дополнение - под сторонником vcl подхода я понимал Шевченко...

2 Плохой человек (30.04.03 22:49)

ну, несколько преувеличено..

да, и если мне пямять не изменяет - ником "Плохой человек" кто-то несколько дней назад грозился больше не пользоваться...


← →
Плохой человек   (2003-04-30 22:58) [44]

>да, и если мне пямять не изменяет - ником "Плохой человек" кто-то несколько дней назад грозился больше не пользоваться...

Память тебе изменяет. Это я грозился не пользоваться никами Anatoly Podgoretsky, Supreme-2, Kostya2000 и, конечно же, Ihor Osov"yak, но увы... никак. не отпускают. я не преувеличил, всё сказанное - правда.


← →
Ihor Osov'yak ©   (2003-04-30 23:02) [45]

Ну пользуйся. На здоровье. может полегшает.


← →
Song ©   (2003-04-30 23:32) [46]

Я вклинюсь немножко в беседу, хотя наверно уже и поздно.
Я считаю, что АПИ должна быть дополнительным средством при программировании, а не основным. Я не понимаю людей, которые делают всё через АПИ, например, создают окна через CreateWindow(Ex), потом вынуждены делать к ним обработчики сообщений и все остальные аттрибуты.. Да, я согласен, размер кода получается меньше, но нужно ли оно? Точнее оправдано ли? Размеры современных жёстких дисков и памяти впечатляют. Я напишу прогу на VCL"е. И пусть exe файл будет 2М, например. И что? Он не запустится? Он прекрасно будет работать. Напрасно думают люди, особенно новички, что VCL - "глючная вещь". На самом деле это зависит от программиста.
Есди всё так, тогда какие причины использования АПИ? Только что повторение - мать учения основ работы ОС, написав при этом в десятки, сотни строк больше, чем написав тоже самое, решая через VCL?
VCL был сделан как средство для быстрого и оптимального средства разработки, коим он и стал. И если программист "не такой крутой кодер на АПИ" это ещё ни о чём не говорит. Тут зависит прежде всего от способностей программирования вообще, а не от того владеет программист АПИ или нет.
Вообщем моё мнение таково: АПИ лучше применять, когда нужно тонко "подрегулировать" тот или иной механизм работы алгоритма в программе, но никак не для программирования всей задачи в целом.


← →
nikkie ©   (2003-05-01 00:21) [47]

>Ihor Osov"yak
>Могу затеять идиотский спор

Согласен, что спор идиотский, так что не будем... Непонятно только зачем тогда это писать.

>в дополнение - под сторонником vcl подхода я понимал Шевченко...
Ну дополни тогда, кого ты имел в виду под сторонником api.

Я вообще не понимаю, зачем начали сделали из ветки спор, что круче - программировать на vcl или на api. Не надо только кивать на DVM, типа это он начал. Я когда читал такие эпитеты, как "идиотизм", "извращение", "садомазохизм" - тоже хотел резко отреагировать. Автор ветки сказал, что хочет перейти на апи. Ничего плохого в этом нет. Что он имел ввиду, говоря "полностью" - давайте не будет гадать. Может он хотел перейти от использования 1 api функции на весь проект на vcl к написанию всего проекта на api. Я считаю - желание похвальное, этот опыт скорее всего лишним не будет.

>Song
>Я считаю, что АПИ должна быть дополнительным средством при программировании, а не основным. ... Я напишу прогу на VCL"е.

Такое ощущение, что многие выступающие считают, что кроме дельфи ничего больше не существует. А ведь есть разные причины, которые заставляют использовать иные средства разработки. Например, требования работодателя. Например, особенности задачи. Вы писали на дельфи для pocketPC? Вы пробовали писать MMC snap-in"ы на дельфи? Зачем использовать дельфи для программирования полноэкранной игры на DirectX или OpenGL?


← →
Malder ©   (2003-05-01 00:34) [48]

Игорь Шевченко,по моему, вы так увлеклись доказательством, что VCL - отличная вещь, что начинаете перегибать палку. Никто и не спорит, что эта библиотека сильно упрощает жизнь. Но не надо косвенно призывать не изучать Win Api. Это нужно и полезно каждому Windows программисту. А если все сказанное вами и есть истина, то нафига ВЫ изучали win32 API, нафига ВЫ читали Рихтера ? Вот вы сами знаете и считаете, что другим это знать необязательно ?

Насчет "Реальный пример нужности такой задачи можешь привести ?" - вы и сами приведете кучу разных примеров. Да, конечно, "это не требуется в реальных задачах или требуется только для узкоспециализированых программ и т.д.", но это отговорки. Ведь некоторые и о сообщениях в windows ничего не знают ! И начинается "как мне узнать, когда курсор покинул xyz окно" - а когда видят код - челюсь вытягивается. Или пример с кодом, защищающем от повторного запуска программы (с мьютексами) - где это в VCL реализовано ?


← →
Плохой человек   (2003-05-01 00:55) [49]

Ребята, API - давно забытое прошлое.


← →
Ihor Osov'yak ©   (2003-05-01 00:59) [50]

2 nikkie © (01.05.03 00:21). Мой пост был связан только с теем, что у очень многих есть желание броситься в дебри апи, не разобравшись с элементарными вещами. Плюс выше неоднократно высказывалось мнение, что работа на vcl мешает пониманию тонкостей работы системы. Имхо, эти вещи не связаны. И пример Шевченко я привел лишь только потому, так как человек с одной стороны как бы противник использования апи, а с другой - здесь не очень то много отыщешь людей с его уровнем знаний на уровне системы.

>Такое ощущение, что многие выступающие считают, что кроме дельфи ничего больше не существует.

Не совсем понимаю почему такой вывод.


2 Malder © (01.05.03 00:34)

Если я в своем проекте пишу три - четыре строчки для работы с мьютексом, то что из этого следует? Что VCL от этого ущербней стала?





← →
Материнская зарплата   (2003-05-01 03:20) [51]

Я задал вопрос потому, что надо уменьшить размер откомпилированного файла и увеличить скорость программы. Но честно говоря, не ожидал такого базара :). Единственное, что мне пригодилось, это ссылки от DVM, за что ему БОЛЬШОЕ СПАСИБО!


← →
Malder ©   (2003-05-01 12:11) [52]

Если я в своем проекте пишу три - четыре строчки для работы с мьютексом, то что из этого следует? Что VCL от этого ущербней стала?

Это означает, что ты пишешь на чистом WinApi. А чтобы писать на чем-нибудь - это надо знать. Я про это говорил и это очевидно. Можешь еще раз пеечитать мой пост.


← →
Ihor Osov'yak ©   (2003-05-01 12:24) [53]

2 Malder © (01.05.03 12:11)

Нет, я пишу на VCL. И даже если иногда я использую слабодокументованные вещи на которые самостоятелно приходится переводить соотв. хидера от sdk или ddk, то я не счинаю, что я пишу на апи. Ибо каркас приложения все-же VCLный.

Пожалуй, есть две оговорки. Я никогда не пользуюсь Синхронайз, ибо там можно получить больше проблем, чем облегшения работы. Также когда-то в серцах сказал себе, что один из следующих win32 сервисов все же будет сделан без этого делфийского шаблона для сервисов. Имхо, каркас для сервисов там действительно реализирован не самым удачным образом.


← →
Song ©   (2003-05-01 13:07) [54]

>>Это означает, что ты пишешь на чистом WinApi.

Ok, а по-твоему тогда как написано следующее? На "чистом" АПИ? :)

Procedure TForm1.Button1Click(Sender: TObject)l
Begin
With Edit1 Do SetWidowLong(Handle,GWL_STYLE,GetWindowLong(Handle,GWL_STYLE) or ES_NUMBER);
End;

?


← →
Malder ©   (2003-05-01 13:36) [55]

Давайте разберемся в терминологии. Чистым WinApi я называю код, где непосредственно вызываются функции, описанные в MSDN и никакие другие функции, описанные в других библиотеках. С этой точки зрения я ошибся:

Это означает, что ты пишешь на чистом WinApi

Хотел сказать, что ты пишешь на WinApi. И его поэтому надо знать. Писать ВЕСЬ проект только на WinApi я никогда не призывал и призывать не буду. Я о том, что Игорь предлагал другую крайность - вообще не изучать WinApi.

> Я и не буду пытаться. Но уметь сделать что-то без VCL надо!


Зачем ? Реальный пример нужности такой задачи можешь привести ?


Разговор идет о том, что вовсе и не надо уметь что-то делать без VCL, что, по моему, явная ахинея.


← →
Ihor Osov'yak ©   (2003-05-01 14:27) [56]

2 Malder © (01.05.03 13:36)
Давайте разберемся в терминологии.


Есть более корректный термин. С использованием Win32 АPI вызовов.
То есть, мы непосредственно вызываем функции, експортируемые модулями, которые образуют win32 подсистему. В
этом отношениии все функции, обьявленные в windows.pas будут win32 api-ишными, ибо на них нет никаких оболочек.

Еще пример. Я использую NtCreateFile. Говорить о том, что я использую Win32 API будет некоррекно, так как эта функция не входит в подмножество Win32 API. Хотя на NT системах Win32 функция CreateFile в конечном итоге обращается к NtCreateFile. Здесь более корректный термин будет - использую Native API.

Еще. "Програмирование на чистом API", имхо, подразумевает работу только с импортироемыми функциями, и такой подход несколько нерационален. Все равно в конечном итоге у вас появлятся аналоги sysutil, какие-то шаблонны для окон и пд и пп. В конце-концов, какой-то код для поддержки неких информационных структур, хотя бы тех же списков.. То есть мы снова сделаем велосипед. Только свой. И как правило, хуже. Конечно,есть исключения в виде приложений, состоящих из одного окна и двух контролов, и может быть, что у вас будет несколько дней времени и воодушевления повозится с этим делом. Ради бога. На здоровье. Но как правило, после первого раза желание пропадает. Еще до окончания работы с проектом.

Далее. С целью обучения намного рациональнее проштудировать того же Рихтера, покопатся во внутренностях VCL, чтобы понять, как там практически реализовано то, о чем читали в Рихтера.


Да. По поводу MSDN. Там много чего написано. И не только о Win32API.


← →
JibSkeart ©   (2003-05-01 14:34) [57]

Пееходи на VC++ и никаких проблем
будешь себе писать на вин АПи,а MFС можете даже несмотреть вам же нужен АПИ :)


← →
Malder ©   (2003-05-01 15:54) [58]

. С целью обучения намного рациональнее проштудировать того же Рихтера, покопатся во внутренностях VCL, чтобы понять, как там практически реализовано то, о чем читали в Рихтера.

Вот ты и сказал то, что говорю я, только другими словами.

Вообще мое замечание относилось к Игорю Шевченко, не понимаю чего ты набросился. Наверное, причислил к противникам VCL и теперь пытаешься заклеймить :)))

Еще раз повторю - Игорь косвенно призывал не изучать API, мол, от этого никакой пользы нету. А я говорю, что польза есть. ВОТ И ВСЕ, ЧТО Я ХОТЕЛ СКАЗАТЬ.

Рихтер - это и есть API.

внутренностях VCL, чтобы понять, как там практически реализовано то, о чем читали в Рихтера

Если ты не собираешься изучать Win32API, не понимаю, как ты собираешься читать Рихтера и уж тем более разбираться во внутренностях VCL, если они все в конечном итоге используют win32API.

Могу затеять идиотский спор, что сторонник vcl подхода даст форы любому здешнему сторонику апи на предмет знания и понимания внутренних механизмов.

Неужели ты никак не можешь понять. НИКТО НЕ ПРЕДЛАГАЕТ ОТКАЗЫВАТЬСЯ ОТ VCL. Но на нем нельзя сделать ВСЕ в windows, как это можно сделать на win32 API. Поэтому знать win32 API надо !

Меня вообще удивляют люди, которые сами читали Рихтера и разбирались во внутреннем устройстве windows призывают других программистов этого не делать, а ограничиваться (да, да, ограничиваться) VCL


← →
VEG ©   (2003-05-01 18:37) [59]

Вот я люблю писать проги только на WIN & DIRECTX API:P


← →
Материнская зарплата   (2003-05-03 04:45) [60]

Ну, кто еще даст ссылок?


← →
Mop ©   (2003-05-04 03:35) [61]

2 VEG
Уважаю...


← →
p77 ©   (2003-05-04 04:05) [62]

Прежде чем переходить на WinAPI, почитали бы MSDN (или хотя бы Win32*.hlp в составе Дельфи). Когда прочитаете, тогда флаг Вам в руки, барабан на шею и марш навстречу электричке:). Удачи.
С уважением,


← →
Материнская зарплата   (2003-05-04 05:00) [63]

Уже почитал, и захотел!


← →
Ihor Osov'yak ©   (2003-05-04 11:14) [64]

Ух ты:

p77 © (04.05.03 04:05)
Прежде чем переходить на WinAPI, почитали бы MSDN

Материнская зарплата (04.05.03 05:00)
Уже почитал, и захотел!

Прыть однако, мне бы такую...

Есть подозрение, что некий злобный буратин со Ставрополя здесь уважаемую публику разводит..
Но может ошибаюсь - пополнение в полку Supreme прибыло..


← →
Anatoly Podgoretsky ©   (2003-05-04 11:36) [65]

Помнится был вопрос - мама бухгалтер
не это ли?



Страницы: 1 2 вся ветка

Скачать: CL | DM;



Память: 0.65 MB
Время: 0.012 c
3-70087
Yuraz
2003-04-29 08:42
2003.05.22
Как оргпнизовать добавление/удаление строки в приложении.


3-70169
Pavel54
2003-05-03 11:00
2003.05.22
Импорт таблицы Paradox в MS Access 2002


14-70453
aga
2003-05-01 16:59
2003.05.22
Ftp-server


7-70545
ККВ
2003-03-25 09:12
2003.05.22
TryIcon


3-70175
Aga
2003-05-03 12:06
2003.05.22
Траблы с базой!!




   Наверх