Hallo Leute
Ich habe nun, ein bereits eher komplexes, Programm geschrieben.
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
ClientReady.uiClient = 0; // Wird übersrungen
// Bereit
char *pchBuffer;
pchBuffer = NULL; // Wird übersrungen
GStartMessage StartMessage;
// Packerl zusammenstellen
pchBuffer = (char*) WM_ALLOC( sizeof(GStartMessage) + sizeof(GStartMessageClientReady));
memset(pchBuffer, 0, sizeof(GStartMessage) + sizeof(GStartMessageClientReady));// Wird übersrungen
StartMessage.MessageType = GStartMessageType::ClientReady;
StartMessage.DataSize = sizeof(GStartMessage) + sizeof(GStartMessageClientReady); // Wird übersrungen
memcpy(pchBuffer, &StartMessage, sizeof(GStartMessage)); // Wird übersrungen
memcpy(pchBuffer+sizeof(GStartMessage), &ClientReady, sizeof(GStartMessageClientReady));
// Packerl versenden
g_pMainMenuTemp->SendMessageStart(pchBuffer, StartMessage.DataSize);
// Alles freigeben
WM_FREE (pchBuffer);
|
Debugge ich die Debugversion durchläuft er alle Schritte.
Debugge ich die Releaseversion überspringt er einfach die gekennzeichneten Schritte. Ich weiß nicht einmal wo ich anfangen soll den Fehler zu suchen! Wann kann soetwas auftreten. Wenn ein Speicherbereich überschritten wird?
mfg Markus