Sign in Join
Wiki copytemporary

DLL static load/de: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11Zurück zu den [[Additional information/de|Zusätzlichen Informationen]].
22
33Dieser Artikel beschäftigt sich mit der Windowsprogrammierung.
44
5-Das Tutorial, zeigt wie eine DLL (Dynamic Link Library) <b>statisch</b> geladen wird.
5+Das Tutorial, zeigt wie eine DLL (Dynamic Link Library) statisch geladen wird.
66
77Die Dll (DLLTest.dll) auf die sich im unteren Beispiel bezogen wird:
88
99``` pascal
1010library Info;
1111
1212{$mode objfpc}{$H+}
1313
1414uses
1515 SysUtils;
1616
1717{$R *.res}
1818
1919// Das Unterprogramm der DLL
2020 function funStringZurueck(strUebergabe: string): PChar;
2121 begin
2222 funStringZurueck := PChar(UpperCase(strUebergabe));
2323 end;
2424
2525// Exportierte Unterprogramm(e)
2626exports
2727 funStringZurueck;
2828
2929begin
3030end.
3131```
3232
3333Einbinden, verwenden und freigeben des DLL-Unterprogramms im eigenen Programm:
3434
3535``` pascal
3636uses
3737 Windows, ...;
3838
3939 ...
4040
4141 {
4242 Nennt das zuverwendende Unterprogramm und die DLL in der das Unterprogramm zu finden ist.
4343 (In diesem Beispiel heisst die DLL DLLTest.dll und ist natürlich durch den Namen
4444 Ihrer DLL zu ersetzen.)
4545 (In diesem Beispiel heisst das Unterprogramm der DLL funStringZurueck und ist
4646 natürlich durch den Namen des Unterprograms in Ihrer DLL zu ersetzen.)
4747 }
4848function funStringZurueck(strUebergabe: PChar): PChar; stdcall; external 'DLLTest.dll';
4949
5050 ...
5151
5252function funWertZurueck: string;
5353begin
5454 // Übernimmt den Rückgabewert des DLL-Unterprogramms
5555 Result := funStringZurueck('hallo welt');
5656end;
5757
5858 ...
5959```
6060
6161---
6262*From the Free Pascal wiki, page "DLL static load/de", as it stood on 2020-02-14 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history