External Lib

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

External Lib

Beitrag von ts-soft »

Diese Lib enthält lediglich eine Funktion und dient dem einzeiligem Funktionsaufruf in DLL's. Besonders nützlich bei in PureBasic nicht vordefinierten API-Aufrufen. Die Syntax:

Code: Alles auswählen

Result = External(DLL.s, Function.s, [Para1.l, [Para2.l, [Para3.l, [Para4.l, [Para5.l, [Para6.l, [Para7.l, [Para8.l, [Para9.l, [Para10.l, [Para11.l, [Para12.l]]]]]]]]]]]])
Beispiele:

Code: Alles auswählen

Debug External("Powrprof.dll", "IsPwrSuspendAllowed")
Debug External("Powrprof.dll", "IsPwrHibernateAllowed")
External("user32.dll", "MessageBoxA", 0, @"Hallo Welt", @"PureBasic", #MB_ICONINFORMATION) 
Einschränkungen:
Nur Windows, max 12 Parameter

Download: http://www.purebasic.ts-soft-online.de/ ... ternal.zip
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Hab es nochmal verbessert. Direkte Übergabe von Strings ist auch möglich. Lediglich das Ergebnis ist immer ein Long (Wert oder Adresse)
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten