NASM: String zurückgeben

Fragen zu allen anderen Programmiersprachen.
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

Re: NASM: String zurückgeben

Beitrag von ts-soft »

Gadgets haben ja extra Funktionen, wie SetGadgetText, GetGadgetText, usw., das hat doch nichts mit
Libs zu tun, die Strings zurückgeben. Dazu solltest Du Dir die Gadget-Beispiele in C angucken!

Code: Alles auswählen

static M_GADGETVIRTUAL void ListIcon_GetGadgetText(PB_Gadget *Gadget, int PreviousStringPosition)
{
}
Wird also auch mit GetOutputbuffer übergeben, siehste am letztem Parameter.
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
Mok
BotHunter
Beiträge: 1484
Registriert: 26.12.2005 14:14
Computerausstattung: MSI GX780R
Intel Core i5-2410M
Nvidia GT 555M
Windows 7 Home Premium 64 bit
Wohnort:   

Re: NASM: String zurückgeben

Beitrag von Mok »

ts-soft hat geschrieben:Dazu solltest Du Dir die Gadget-Beispiele in C angucken!
Ham die was mit der ComboBox.asm zu tun?
Dort steht nämlich folgender Code.

Code: Alles auswählen

ComboBox_GetGadgetText:
	PUSH	dword 0
	PUSH	dword 0
	PUSH	dword CB_GETCURSEL
	PUSH	dword [esp+16]
	CALL	SendMessage				; Get the current select indes in 'eax'
	CMP		eax,-1
	JE		ComboBox_GGT_End
	PUSH	dword [PB_StringBase]
	PUSH	eax
	PUSH	dword CB_GETLBTEXT	; CB_GETTEXT or LB_GETTEXT, depending of the gadget type
	PUSH	dword [esp+16]
	CALL	SendMessage
	CMP		eax,-1
	JE		ComboBox_GGT_End
	ADD		dword [PB_StringBase], eax
ComboBox_GGT_End:
  MOV   eax, [PB_StringBase]
  MOV   byte [eax], 0
	RET   4
edel hat geschrieben:Das NASM Beispiel im SDK Ordner ist wohl noch ein Relikt aus 3.94 Tagen
Na prächtig.
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
Antworten