Hallo,
Ich schreibe gerade an einem multithreading Programm in C++/WinApi und schaff es nicht mehrere Daten bzw. eine Struktur über einen LPVOID-Pointer zu übergeben.
Hier habe ich mein Problem etwas vereinfacht:
main.cpp:
thread.cpp
Kann mir hier jemand helfen?
mfg. Poseidon
Ich schreibe gerade an einem multithreading Programm in C++/WinApi und schaff es nicht mehrere Daten bzw. eine Struktur über einen LPVOID-Pointer zu übergeben.
Hier habe ich mein Problem etwas vereinfacht:
main.cpp:
Code:
void up1(LPVOID); //Prototyp für Unterprogramm
struct struktur //Struktur mit meinen Daten
{
int val0;
int val1;
};
void main()
{
struct struktur a;
LPVOID * global_pointer; //LPVOID - Pointer
global_pointer=(LPVOID*)&a;
a.val0=-1; //Struktur mit Werten befüllen
a.val1=-2;
printf("main: %d %d\n",a.val0,a.val1); //Ausgabe: -1 -2 (soll auch in up1 ausgegeben werden!)
up1(*global_pointer);
getchar();
}
thread.cpp
Code:
void up1(LPVOID);
void up1(LPVOID data)
{
printf("Thread: %d",data); //gibt den Wert -1 aus (wie komm ich auf val1 der Struktur?)
}
Kann mir hier jemand helfen?
mfg. Poseidon