Sto cercando di seguire i semplici passi di una guida che ho trovato sulla programmazione C sotto windows
Questo è il codice:

#define STRICT
#define WIN32_LEAN_AND_MEAN
#include<windows.h>

BOOL CALLBACK unaDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);

int WINAPI WinMain (HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){

return DialogBoxParamW(0,"MioDialogo",0,unaDlgProc,0);
}


BOOL CALLBACK unaDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam){

if(uMsg==WM_CLOSE) {
EndDialog(hwndDlg,0);
return TRUE;
}
return FALSE;
}

questo invece è il .rc

#include <windows.h>

MioDialogo DIALOG DISCARDABLE 0, 0, 186, 92
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Un Dialogo vuoto"
FONT 8, "MS Sans Serif"
BEGIN
END



Questo programma dovrebbe semplicemente creare un finestra vuota e abilitare il pulsante "X" per farla chiudere.
provando a compilarlo mi da i seguenti log:

C:\Users\utente\Documents\prog_dev\prog2\main.cpp In function 'int WinMain(HINSTANCE, HINSTANCE, PSTR, int)':
9 56 C:\Users\utente\Documents\prog_dev\prog2\main.cpp [Error] cannot convert 'const char*' to 'LPCWSTR {aka const wchar_t*}' for argument '2' to 'INT_PTR DialogBoxParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM)'

Se puo essere utile uso il compilatore devc++ .