Ciao
Chiedo scusa per la mancanza di informazioni.
Linguaggio C
Compilatore Dev-C++
il codice che sto usando è il seguente, ma non funziona. La compilazione viene effettuata senza errori, ma non viene eseguito il programma
main.c
codice:
#include <windows.h>
#include <shellapi.h>
#include "resource.h"
BOOL CALLBACK dlgProc(HWND hwndDlg,UINT dlgMsg,WPARAM wParam,LPARAM lParam);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
DialogBoxParam(hInstance,"MioDialog",0,dlgProc,0);
return 0;
}
BOOL CALLBACK dlgProc(HWND hwndDlg,UINT dlgMsg,WPARAM wParam,LPARAM lParam)
{
HICON hIcon;
switch(dlgMsg)
{
case WM_INITDIALOG:
hIcon = (HICON)LoadImage(GetModuleHandle(NULL), MAKEINTRESOURCE(APP_ICON), IMAGE_ICON, 0, 0, LR_DEFAULTCOLOR);
if (hIcon) {
SendMessage(hwndDlg, WM_SETICON, (WPARAM) (ICON_SMALL), (LPARAM) (hIcon));
SendMessage(hwndDlg, WM_SETICON, (WPARAM) (ICON_BIG), (LPARAM) (hIcon));
}
case WM_CLOSE:
EndDialog(hwndDlg,0);
return TRUE;
break;
case WM_COMMAND:
switch(wParam)
{
case ID_NO:
MessageBox(0, "Hai detto NO.", "Messaggio", MB_OK | MB_ICONEXCLAMATION); ShellExecute(NULL,"open","http://google.it",NULL,NULL,SW_SHOWNORMAL);
break;
case ID_OK:
mciSendString("set cdaudio door open",NULL,0,NULL);
MessageBox(0, "Hai detto OK.", "Messaggio", MB_OK | MB_ICONINFORMATION);
EndDialog(hwndDlg,0);
break;
}
break;
}
return 0;
}
se levo tutto il case WM_INITDIALOG funziona, ma non vedo l'icona.