Windows API

Origem: A Bíblia do Lazarus, a enciclopédia livre.

Conteúdo

Sobre a API do Windows

Fica claro desde já que é recomendável utilizar as classes da LCL sempre que existir um equivalente para a função da API que se deseja utilizar. Caso não exista equivalente, a parte do programa que chama a API do Windows deve ser cercada por {$IFDEF Win32} ... {$ENDIF} e para portar o aplicativo basta escrever um equivalente em Gtk abaixo e cercado por {$IFDEF Gtk} ... {$ENDIF}, e outros IFDEFs para as outras plataformas. Desta maneira todas as partes dependentes de plataforma do programa ficam delimitadas e ele pode compilar para outros sistemas.

Alguns softwares possuem natureza tão dependente de plataforma que se torna desnecessária esta delimitação, mas estes são minoria. Nesta categoria se encaixam os drivers, sempre específicos de um sistema operacional, e muitas vezes de uma versão dele até. Também existem programas de pouca utilidade em outras plataformas, como os programas de instalação do Windows.

Muitas funções da API do Windows estão implementadas de uma maneira multiplataforma no unidade LCLIntf. Elas podem ser utilizadas exatamente como as funções da API do Windows, e esta documentação também se aplica a elas. Ao chamar uma das funções da LCLIntf, caso esteja no Windows ela será passada diretamente para a API do Windows e no Linux a função é implementada em Gtk.

O que é a API do MS-Windows

A API (Interface de Programação de Aplicações) do Windows é uma "forma de programação alternativa" sempre possível. Na verdade, muitas funções do Delphi, e até mesmo do FreePascal não são realmente funções, são simplesmente declaração de funções que chamam "funções reais" de DLLs do Windows. Diz-se então que uma função do Delphi ou do FreePascal "implementa" uma função da API, "chamando" a função de modo mais seguro. Exemplo disso é a conhecida função MessageBox. A função MessageBox é "chamada" da biblioteca dinâmica user32. Tenha em vista como funciona a função MessageBox.

Para utilização da API do Ms-Windows nos seus aplicativos, tenha em mente que o Ms-Windows não utiliza dados iguais ao Delphi/Lazarus. Normalmente para strings (seqüências de caracteres, ou palavras) o Ms-Windows utiliza dados do tipo de dado PCHAR, que são strings com final nulo, as strings ao estilo da linguagem C, em que, "provavelmente" o kernel do Ms-Windows foi escrito. Então, esteja pronto para conversão de tipos de dados e mãos-a-obra.

Funções da API do MS-Windows

A API do Windows é muito extensa e seria impossível reuni-la aqui. Para maiores detalhes consulte Windows User Interface. Seguem alguns exemplos de funções:

MessageBox

ShellExecute

Exemplos de Código com a API do Windows

Nenhum Código disponível ainda :-(

Personal tools