Forum: PC-Programmierung Prozedur für WM_CREATE per SendMessage aufrufen


von win32_progger (Gast)


Lesenswert?

Ist es möglich, die Prozedur "Probe" per SendMessage für WM_CREATE 
aufzurufen? Bisher habe ich ohne Erfolg diese Methode ausprobiert.
1
class CWindow {
2
public:
3
  void OnCreate();
4
  static void Probe();
5
};
1
void CWindow::Probe() {
2
  CWindow wnd;
3
  MessageBox(wnd.hwnd, "Erfolg!", "Erfolg!", 0);
4
}
5
6
void CWindow::OnCreate() {
7
  SendMessage(hwnd, WM_CREATE, 0, (LPARAM)Probe);
8
}

von Peter (Gast)


Lesenswert?

win32_progger schrieb:
> SendMessage(hwnd, WM_CREATE, 0, (LPARAM)Probe);

und warum sollte jetzt die Prozedure gestartet werden? Du senden eine 
Nachricht mit der Adresse von Probe mehr nicht. Du müssten noch ein 
eventhandler schreiben und dann anhand der Message die Prozedur startet, 
aber was ist der sinn davon?

von win32_progger (Gast)


Lesenswert?

Wenn es fertig ist, soll es im Prinzip einen kleinen Wrapper für Win32 
darstellen. OnCreate, OnDestroy, OnPaint soll mir letzten Endes dazu 
dienen, dass die WndProc-Funktion eingekapselt wird.

von Karl H. (kbuchegg)


Lesenswert?

Nichts desto trotz hast du es IMHO genau anders rum.
OnCreate soll aufgerufen werden, wenn ein WM_CREATE über die Queue 
hereinkommt und nicht anders rum.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.