Использование справочной системы по функциям Windows API
Функций Windows API неисчислимое множество, что их просто невозможно запомнить впрочем, этого совсем и не нужно делать, потому что все они описаны в справочнике.
Для русского разработчика наиболее доступным (поэтому можно сказать и удобным) является Win32 Developer's Reference.
Наконец, если не удается понять, как функция, описанная в справке, должна быть переведена на Pascal, можно попытаться найти описание этой функции в исходных текстах модулей, поставляемых вместе с Delphi. Эти модули находятся в каталоге $(DELPHI)\Source\RTL\Win. Так же весьма может пригодиться вплывающая подсказка в среде делфи появляющаяся после того как набрана имя функции.
Если обратиться к справке, например, по функции GetSystemMetrics, то видно, что функция должна иметь один целочисленный параметр. Но в справке также предлагается при вызове этой функции подставлять в качестве параметра не числа, а константы эквивалентные числовым параметрам.
Все константы описываются в том же модуле, где описана функция, использующая их, поэтому можно не выяснять численные значения этих констант, а указывать при вызове функций их имена, например, GetSystemMetrics (SM_Arrange), к тому же использовать константу намного удобнее ведь название несет в себе осмысленно значение. Если, по каким-то причинам, все-таки потребовалось выяснить числовой эквивалент, то в справочнике их искать нет смысла — их там нет. Можно посоветовать лишь опять отправить к исходным текстам модулей Delphi, в которых эти константы описаны. К примеры в Windows.pas, можно узнать, что SM_ARRANGE = 56.
В описании многих функций Windows API можно увидеть три ссылки:
Quicklnfo, Overview и Group.
Первая дает краткую информацию о функции. Самой полезной частью этой информации является то, для каких версий Windows эта функция реализована. Например, очень полезна функция MaskBit, однако Quicklnfo показывает, что она реализована только в Windows NT. Программа, использующая эту функцию, не будет работать в Windows 95. Иногда напротив названия одной из систем стоит слово "Stub", которое переводится как "пень", "обрубок" (например, для функции GetDeviceGammaRainp это слово стоит напротив Windows NT). Это означает, что в данной версии эта функция присутствует (т. е. обращение к ней не вызывает ошибки), но ничего не делает. Зачем это понадобилось делать эти обрубки известно разве что разработчикам windows и то возникают сомнения на сей счет.
Комментарии (0)