Hallo *!
Möglicherweise liegt's am Wetter, aber irgendwie hab ich hier eine Inkonsistenz, die mir den Nerv raubt. Zumal es so was simples ist, dass ich mich echt langsam frag, ob ich **** bin... Für den Fall, dass das so ist, dürft ihr mir das gerne sagen, ich stehe zu meinen Dummheiten!
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| var buf: array[1..6] of Byte; a: Integer; begin for a := 1 to 6 do begin Logging.Debug( '#1 ' + IntToStr( a ) ); buf[a] := 255; end; SendConnectSecondDevice( buf ); end;
procedure TEW3ServiceToolMainForm.SendConnectSecondDevice( MAC: array of Byte ); var a: Integer; begin AppendLineStringToMemo( 'Connect to MAC: ' + IntToStr( MAC[1] ) + ', ' + IntToStr( MAC[2] ) + ', ' + IntToStr( MAC[3] ) + ', ' + IntToStr( MAC[4] ) + ', ' + IntToStr( MAC[5] ) + ', ' + IntToStr( MAC[6] ) ); |
Ich hab jetzt einiges weggelassen, von dem ich denke, dass es nichts damit zu tun hat. Was ich machen will/muss ist ganz, ganz, ganz einfach: Einfach ein Array von 6 Byte in die Unterfunktion SendConnectSecondDevice übergeben. Aber die Ausgabe von "AppendLineStringToMemo" sieht allen Ernstes (kein Scherz!) so aus:
Delphi-Quelltext
1:
| 15.9.2009 16:38:53: Connect to MAC: 255, 255, 255, 255, 255, 96 |
Irgendjemand eine Erklärung dafür??? Ich bin auch eher ein Fan von Java, und gerade verstehe ich mehr und mehr warum, ich lasse mich aber gerne wieder etwas zurückholen.

)
PS: Anbei noch: Die Schleifen laufen lt. Debugger RÜCKWÄRTS, d.h. fangen mit 6 an und laufen runter bis 1, ich nehme an, das ist ein Effekt der Code-Optimization??? Ist mir ja im Prinzip auch egal, fand ich bloß komisch...
Danke schonmal,
Stephan
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Di 15.09.2009 um 18:00