¿hay alguna web que contenga las APIS de windows para delphi?

Iniciado por AlxSpy, 8 Julio 2011, 19:00 PM

0 Miembros y 1 Visitante están viendo este tema.

AlxSpy

hola estoy practicando delphi (el entorno : delphi 7) y pues queria centrarme en el manejo de las apis de windows pero hay poquisima informacion sobre esto , no se si quiizas alguien conosca alguna web/documento donde las expongan (el prototipo algun ejemplo, como declararlas) algo asi como la web y programa "apiguide" de visual basic 6.0 que tiene ufff como 900 apis.

Queta

"Intenta no volverte un hombre de éxito, sino volverte un hombre de valor." Albert Einstein.


d(-_-)b

#3
Hay una series de libros muy buenos, llamados, The Tomes of Delphi.

The Tomes of Delphi, Estos son algunos se la seria que trata la API de Windows.

The Tomes of Delphi:

Win32 Multimedia API (Este es dificil de conseguir, lo busco desde hace mucho y no he podido conseguir la descarga)
Win32 Shell API Windows 2000 Edition
Win32 Core API Windows 2000
Win32 Graphical Api(Español)

saludos...
Max 400; caracteres restantes: 366

Khronos14

alxspy, Delphi 7 es del año 2003, si puedes consigue otro Delphi más moderno.

Absolutamente (o casi) todas las APIs de Windows están en el archivo Windows.pas, lo puedes abrir y puedes ver todas las APIs, está ordenadas alfabéticamente. Todas tienen nombres muy descriptivos para saber lo que hacen, pero si tienes alguna duda pones en google "CreateFileMapping msdn" y listo.

Saludos.

AlxSpy

#5
claro que busque deberas, los prototipos de apis que se encuentran a monton son los de c++ y visual basic 6.0, mira... la sintaxis de las funciones no es problema sino el como incluir otras apis que no estan incluidas en delphi y sus tipos de datos que manejan porque lo que en C++ es tipo de dato SOCKET en vb6 es long y en delphi vi que es TSocket y ahi es el problemita en que algunos tipos varian, me podrias decir como incluir una funcion api que no esta en delphi? por ejemplo CreateFile no esta directa para usar como si esta MessageBox, o si tuviera que usar alguna funcion de otra dll que no sea de windows como lo haria? en vb6 es sencillo:

private declare function ShowWindowlib "user32" (byval hwnd as long,byval cmdshow as long) as long

private declare function MiFuncion lib "C:\mi Libreria.dll" (parametros as tipo) as tipo

como se haria esto en delphi?


edit:
acabo de ver windows.pas contiene una gran cantidad de funciones y sus librerias y es bastante extenso, podrias dar un ejemplo de como agregar una funcion "X" de una libreria "X" para usarla, con ya eso seria suficiente , ah y que delphi me recomiendas yo recien que inicio en este lenguaje.

Khronos14

Código (delphi) [Seleccionar]

program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

function MessageBox(hWnd:LongWord; lpText, lpCaption: PAnsiChar; uType: LongWord): Integer; stdcall; external 'user32.dll' name 'MessageBoxA';
//function MessageBoxA(hWnd:LongWord; lpText, lpCaption: PAnsiChar; uType: LongWord): Integer; stdcall; external 'user32.dll';

begin
    MessageBox(0, 'qwdqwdqwd', 'qwdqwdqw', 0);
end.


Básicamente se haría así, tienes que establecer un nombre a la función, no tiene porque ser el mismo que la función que vas a importar. Luego lo declaras como stdcall, y con external le indicas al compilador de que librería vas a importar la función. Name sólo es necesario si le pones un nombre distinto a tu función.

Saludos.


seba123neo

la sintaxis cambia, pero las apis son todas iguales para cualquier lenguaje, no es que el visual basic tenga 900 y delphi tenga mas o menos apis, tiene las mismas.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

_Enko

el mejor tutorial de winapi y delphi7

http://www.angelfire.com/hi5/delphizeus/


Citaralxspy, Delphi 7 es del año 2003, si puedes consigue otro Delphi más moderno
El producto no ha mejorado, solo le han agregado mas componentes, en si sigue siendo el mismo.