Hi!
Kurz zu Deinem Code:
if (m_ctrIcon.SetIcon(::LoadIcon(NULL, „IDI_ICON1“)) == NULL)
AfxMessageBox(„NULL“);
So hätte es glaube ich heißen sollen, oder?
Also gut, es gibt da 2 Dinge, die Du ändern mußt:
- Wenn Du bei LoadIcon als Instanz NULL angibst, dann versuchst Du ein Systemicon zu laden, wenn Du ein Icon aus den Ressourcen deines Programmes laden willst, mußt Du das Instanzhandle Deiner Anwendung angeben. Du erhältst das mit AfxGetInstanceHandle().
- IDI_ICON1 ist ein numerischer(!) Wert, der das Icon in deinen Ressourcen identifiziert. Wenn Du es mit Hochkomma angibst, versucht LoadIcon eine Ressource mit dem Namen IDI_ICON1 zu finden, die es ja nicht gibt. Verwende stattdessen das Makro MAKEINTRESOURCE().
Dein Code würde dann so aussehen:
if (m_ctrIcon.SetIcon(::LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_ICON1))) == NULL)
AfxMessageBox(„NULL“);
Ich hoffe ich konnte Dir helfen!
Max
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]