Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 242806 (4242)
  Suchen
 Zurück zur Übersicht
 AutorThema: Prozeduren in DLLs
Daniel Dyla
Datum:23.07.02 13:35 Antwortenals Email verschicken (dylambo@dakusoft.de) 


Hallo liebe Profaner!!
Hat jemand von euch eine Übersicht (die er mir zuschicken kann) über die Funktionen/Prozeduren, die in den DLL's von Windows sind?
z.B. die kernel32, user32, gdi, etc.

Oder kennt jemand 'ne gute Seite??

Danke schon mal!!


Frank Abbing
Datum:23.07.02 15:04 Antwortenals Email verschicken  


Hallo,

hier sind alle API's aufgeführt:

http://msdn.microsoft.com/library/default.asp

Gruß, Frank


Daniel Dyla
Datum:23.07.02 15:15 Antwortenals Email verschicken  


Jau, danke!
Sieht ja schon mal ganz gut aus. Gibt es denn sonst nicht (abgesehen von teuren Büchern) einfache Listen in denen die Funktionen mit Parametern angegeben sind??


Frank Abbing
Datum:23.07.02 16:15 Antwortenals Email verschicken  


Hallo,

mag's wohl geben, ich kenne aber keine.
Hier nochmal ein Link, wo die wichtigsten API in deutsch erklärt werden (leider nur mit VB-Beispielen):

http://www.visualbasic-archiv.de/vbapi/index.php3

Gruß, Frank


Frank Abbing
Datum:25.07.02 21:11 Antwortenals Email verschicken  


Hallo,

hier ist so eine Liste...

http://www.cod.edu/people/faculty/lawrence/winapi.htm

Gruß, Frank


Sven Schmidts
Datum:26.07.02 08:41 Antwortenals Email verschicken (schmidts@flat2serv.de) 


Hier eine Funktion aus Delphi, um alle exportierten Funktionen einer DLL rauszubekommen. Muesste jemand portieren, habe derzeit leider keine Zeit.

Sven

"
function ListDLLExports(const FileName: string) : TStringList;
type
TDWordArray = array [0..$FFFFF] of DWORD;
var
imageinfo : LoadedImage;
pExportDirectory : PImageExportDirectory;
dirsize : Cardinal;
pDummy : PImageSectionHeader;
i : Cardinal;
pNameRVAs : ^TDWordArray;
Name : string;
begin
Result := TStringList.Create;

if MapAndLoad(PChar(FileName), nil, @imageinfo, True, True) then begin
try
pExportDirectory := ImageDirectoryEntryToData(imageinfo.MappedAddress, false, IMAGE_DIRECTORY_ENTRY_EXPORT, dirsize);
if (pExportDirectory <> nil) then begin
pNameRVAs := ImageRvaToVa(imageinfo.FileHeader,imageinfo.MappedAddress, DWORD(pExportDirectory^.AddressOfNames),pDummy);
for i := 0 to pExportDirectory^.NumberOfNames - 1 do begin
Name := PChar(ImageRvaToVa(imageinfo.FileHeader,imageinfo.MappedAddress, pNameRVAs^, pDummy));
Result.Add(Name);
end;
end;
finally
UnMapAndLoad(@imageinfo);
end;
end;
end;

"


Daniel Dyla
Datum: 26.07.02 08:57 Antwortenals Email verschicken  


Danke Leute!
Die Delphivariante werde ich die Tage selbst mal testen (kann ja auch ein bischen Delphi). Muss deswegen nicht unbedingt geportet werden.
Die Listen sind auch ganz hilfreich, zumal ich auf der VisualBasic Seite noch ein Programm gefunden habe, in dem ca. 6500 API-Funktionen aufgeführt sind (sowohl 16- als auch 32Bit).

http://www.visualbasic-archiv.de/include/count.php3?type=download&id=182

Tschö!




 Zurück zur Übersicht