Hallo,
habe gerade 5.50 mit einem Quellcode probiert, der unter 5.43 LTS einwandfrei läuft.
2 Probleme sind mir aufgefallen:
a.) Eine "Division durch Null" bei einer Zahl, die annährend Null ist. Bisher kein Problem.
Nun "glaubt" PB5.50 wahrscheinlich das wäre Null und bringt die Fehlermeldung.
Auch kommen diverse Messwerte aus dem Controller nun mit anderen Werten zurück.
Ev. muss ich hier ja generell nur auf einen anderen/genaueren Datentyp umsteigen, aber seltsam ist es schon.
Kann aber auch mit der Weiterverarbeitung von Auslesedaten aus Punkt b.) zusammen hängen.
b.) Eine Abfrage auf auf einem Microcontroller brachte als Ergebniss immer sauber Daten zurück:
Abfrage an den Controller:
SendNetworkString(ConnectionID, "Version \r\n")
Empfang der Daten und Weiterverarbeitung:
ReceiveNetworkData(ConnectionID, *Version, 200)
Version$=PeekS(*Version)
Unter 5.43 LTS sah das dann so aus:
Firmware:
uC: ATMega32
Ver: 1.03
NIC: ENC28J60
Einstellungen:
Board-IP: 192.168.1.90
Subnetz: 255.255.255.0
Gateway: 192.168.1.1
Unter 5.50 sieht das nun so aus:
Firmware:
䍵›呁敍慧㈳敖㩲ㄠ〮ള上䍉›久㉃䨸〶
Einstellungen:
Board-IP: 㤱⸲㘱⸸⸱〹Subnetz: 㔲⸵㔲⸵㔲⸵ര
Gateway: 㤱⸲㘱⸸⸱റ
Irgendwas wurde hier ja Richtung Zeichensatz ASCII, Unicode, UTF8, etc. geändert.
Ich frage mich natürlich, was da der Hintergrund für eine solche Änderung ist/war, und wie ich meinen Quellcode auf PB 5.50 wieder zum Laufen bringen kann.
Mir bleibt ja die LTS-Geschichte noch eine Weile erhalten, aber was passiert da bei 5.50 und folgende Versionen?
Ev. hat hier ja jemand eine entsprechende Antwort für mich.
Danke im Voraus.
Zeichensatz
- samurai1967
- Beiträge: 7
- Registriert: 01.02.2010 23:19
- Kontaktdaten:
Zeichensatz
Homepage: http://www.oliver-schlenker.de.vu
- 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: Zeichensatz
Hier bist Du leider Total verkehrt gelandet
An die Moderatoren: Bitte Thread verschieben nach "Anfänger oder Allgemein".
Ansonsten die Antwort zu Deiner Frage: Wie bereits seit langem angekündigt, wird als native Zeichencodierung
nur noch Unicode unterstützt. Das heißt, jeder String in Literalen ist jetzt Unicode. Im Speicher sind selbst-
verständlich andere Codierungen möglich. Also mit Pseudotypes, umwandeln durch Peek und Poke oder die
neuen Funktionen: UTF8("text") bzw. Ascii("text") nutzen.

An die Moderatoren: Bitte Thread verschieben nach "Anfänger oder Allgemein".
Ansonsten die Antwort zu Deiner Frage: Wie bereits seit langem angekündigt, wird als native Zeichencodierung
nur noch Unicode unterstützt. Das heißt, jeder String in Literalen ist jetzt Unicode. Im Speicher sind selbst-
verständlich andere Codierungen möglich. Also mit Pseudotypes, umwandeln durch Peek und Poke oder die
neuen Funktionen: UTF8("text") bzw. Ascii("text") nutzen.
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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- HeX0R
- Beiträge: 3042
- Registriert: 10.09.2004 09:59
- Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3 - Kontaktdaten:
Re: Zeichensatz
Um bei Deinem Beispiel zu bleiben, es ist ganz simpel:
Code: Alles auswählen
;Abfrage an den Controller:
BytesSend = SendNetworkString(ConnectionID, "Version \r\n", #PB_Ascii)
;Empfang der Daten und Weiterverarbeitung:
BytesReceived = ReceiveNetworkData(ConnectionID, *Version, 200)
Version$ = PeekS(*Version, BytesReceived, #PB_Ascii)
{Home}.:|:.{Codes}.:|:.{Downloads}.:|:.{History Viewer Online}.:|:.{Bier spendieren}
- samurai1967
- Beiträge: 7
- Registriert: 01.02.2010 23:19
- Kontaktdaten:
Re: Zeichensatz
Danke für die zügige Antwort und Entschuldigung dass ich das im Forum falsch platziert habe.
Homepage: http://www.oliver-schlenker.de.vu
Re: Zeichensatz
Hallo Leute,
habe mir den neuen Release angeschaut und porbiert!
Da ich SQLite verwende, und hier das Editorgadget in Richtext abspeichere, zeigt mir nun das Ding den Richtext Code an!
NOTIZ$= GetDatabaseString(DB,2)
SetGadgetText(#EditorGadget,Notiz$)
Wie wandle ich meine Notizen wieder in eine lesbare Anzeige bzw. was passiert wenn ich die Notizen speichere, brauche ich dann eine neue Datenbank, weil die Notizen verschiedene Formate haben?
Ein weiters Problem habe ich bei meinen HTML-Lesezeichen die ich ins Webgadget lade. Hier erscheinen "?" nun in der Anzeige.
LesezeichenGerman:
IncludeBinary "Z:\Pure@Store\HTML\BROWSER\LesezeichenGerman.html": Data.b 0
Wie kann ich diese wieder Sichtbar laden. Vielleicht kann mir jemand helfen?
Zum Release selbst finde ich das er gelungen ist und die Sache schneller läuft, Danke!
Gruss ... Velindos
Tip am Rande:
Die Anzeige der Procedure im Proceduren Stamm, wenn man auf den Text der Procedure mit Strg+DPCLK drückt wäre noch ein Highlight?
habe mir den neuen Release angeschaut und porbiert!
Da ich SQLite verwende, und hier das Editorgadget in Richtext abspeichere, zeigt mir nun das Ding den Richtext Code an!
NOTIZ$= GetDatabaseString(DB,2)
SetGadgetText(#EditorGadget,Notiz$)
Wie wandle ich meine Notizen wieder in eine lesbare Anzeige bzw. was passiert wenn ich die Notizen speichere, brauche ich dann eine neue Datenbank, weil die Notizen verschiedene Formate haben?
Ein weiters Problem habe ich bei meinen HTML-Lesezeichen die ich ins Webgadget lade. Hier erscheinen "?" nun in der Anzeige.
LesezeichenGerman:
IncludeBinary "Z:\Pure@Store\HTML\BROWSER\LesezeichenGerman.html": Data.b 0
Wie kann ich diese wieder Sichtbar laden. Vielleicht kann mir jemand helfen?
Zum Release selbst finde ich das er gelungen ist und die Sache schneller läuft, Danke!
Gruss ... Velindos
Tip am Rande:
Die Anzeige der Procedure im Proceduren Stamm, wenn man auf den Text der Procedure mit Strg+DPCLK drückt wäre noch ein Highlight?
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)