Hallo!
Bin später zum Antworten gekommen, als ich dachte. Auf geht's:
> 64k für eine Fehlermeldung ist totaler Overkill
Das stimmt. Da habe ich vorher nicht dran gedacht. Ich habe lediglich den Hinweis auf der MSDN Seite gesehen,
FormatMessage_() hat 64 KB als maximales Buffer-Maximum. Ich werde das in Kürze ändern.
> typische Optimierungswahn
Nun, ist es nicht schneller, einen festen String zu allokieren, statt einen 'dynamischen'; dessen Speicher erst vergrößert werden muss, um n Spaces aufzunehmen? Das war mein Gedanke, den ich dabei hatte. Ich wollte mir im Grunde lediglich
das Space(1000) sparen. Das habe ich in einem PB-Tutorial gelesen, welches als Alternative zu
Code: Alles auswählen
buffer$=Space(1000)
; und
*buffer=AllocateMemory(1000)
das hier empfohlen hat:
Find ich rech raffiniert.
> Wenn der Preis dafür ist das das Programm abstürzt (PB 4.20)
Nun, dass PB 4.20 Probleme mit solch großen Fixed-Strings hat, war mir nicht bewusst. Wie dem auch sei, ich werde den Buffer verkleinern.
@ All:
Vielen Dank für eure zahlreichen Posts und Rückmeldungen! Ich fand diese Prozedur eine gute Warmhalte-Übung, da ich seit Wochen leider nicht mehr in PB-Programmiere, weil ich z. Zt. nur wenig Zeit, aber noch weniger Ideen habe.
