Unnormale Strings
Übersicht

porcusBetreff: Unnormale Strings |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe neulich versucht einige WinApi Funktionen unter BlitzMax zu
verwenden. Sobald in dieser WinApi Funktion irgendein Parameter ein String ist, funktioniert das ganze nicht. Ich habe dann auch die Messagebox-Funktion von der WinApi ausprobiert und da stand statt dem übergebenen String nur ein Buchstabengewirr. Anscheinend benutzt BlitzMax eine andere Art von Strings, worauf auch blitz_string.c in brl.blitz hinweist. Kann man irgendwie aus dem BM-String einen normalen String machen und ihn dann an die Funktion übergeben ? |
||
*Account deaktiviert* |
![]() |
Suco-XBetreff: ..... |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ein String ist ein Objekt und die WinAPI arbeitet nicht Objekt Orientiert. So ist der String im falschen Format. Dir bleiben aber zwei Möglichkeiten:
Code: [AUSKLAPPEN] Strict Extern "Win32" Function MessageBox(hWnd:Int, Text$z, Cap$z, Ty:Int) = "MessageBoxA@16" Function MessageBox2(hWnd:Int, Text:Byte Ptr, Cap:Byte Ptr, Ty:Int)="MessageBoxA@16" End Extern MessageBox(0, "Version 1", "", 0) MessageBox2(0, "Version2".ToCString(), "", 0) Die mit dem $ finde ich persönlich bequemer. Bei der zweiten Version müsstest du den von TOCString reservierten Speicher noch mit MemFree wieder freigeben. Mfg Suco |
||
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group