Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Ntui : GetAttrByID
#3
Du darfst noch auf Felder der Structs zugreifen. ntui_GetEngineAttr ist auch nicht erlaubt, oder ;-) (ist das nicht private?)

Du hast schon recht, man kommt mit ntui_GetAttr an alle Sachen ran, an die man auch ran kommen darf.

In deinem Fall hast du nur Amiblitz überschätzt, dass es versteht dass es einen String kopieren soll. ntui_GetAttr gibt lediglich einen Pointer zurück. In einen amiblitz String musst du das selbst konvertieren. Denke dran, dass ntui, zumindest der core, keine Amiblitz3 eigenheiten benutzt da es auch unter C und anderen Sprachen verwendbar sein soll.

Also:
[ab3]portname.s = "<undefined>"

If ntui_GetAttr{*Engine,#TUIEA_AREXXPORT,&*stringPointer.b}
If *stringPointer Then portname = Peek.s(*stringPointer)
End If[/ab3]


EDIT:
[ab3]*Engine.tuiEngine = ntui_GetEngine{AppContext\tuiEngine}[/ab3]
Das ist zwar erlaubt, aber sinnlos. Wenn AppContext\tuiEngine bereits die tuiEngine ist, warum holst du sie neu?
ntui_GetEngine solltest du auf das erste Object machen dass du erzeugst. Danach verwendest du es überall.
Zitieren


Nachrichten in diesem Thema

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 4 Gast/Gäste