PDA

Visualizza la versione completa : [C] CreateWindowEx ritorna sempre il valore 1


php_4ever
14-03-2011, 17:57
Perché non funziona? Ritorna sempre 1 :|


#include <stdio.h>
#include <windows.h>

int main(void)
{
HINSTANCE instance;
HWND handle;

handle = CreateWindow (
"MainWClass", // Class name
"Window!!", // Title
WS_MINIMIZEBOX|// \
WS_CAPTION| // \__> style
WS_POPUP| // /
WS_SYSMENU, // /
CW_USEDEFAULT, // Left
CW_USEDEFAULT, // Top
250, // Width
250, // Height
(HWND) NULL,
(HMENU) NULL,
instance,
NULL
);

if (!handle)
{
return 1;
}

ShowWindow(handle, SW_SHOW);

while (1)
{
UpdateWindow(handle);
}

return 0;
}


Devo usare per forza il C++?
Devo settare qualcosa da qualche parte? (uso Code::blocks).

Grazie :D

lolide
14-03-2011, 19:38
La classe della finestra è "MainWClass"... la crei da qualche parte ?

PS: Reference di CreateWindowEx (http://msdn.microsoft.com/en-us/library/ms632680(v=vs.85).aspx)

php_4ever
14-03-2011, 19:51
"MainWClass" non dovrebbe già essere dichiarata? Se ho ben capito dovrebbero esserci già delle classi predefinite che posso utilizzare...

Beh, adesso faccio qualche esperimento con RegisterClass e poi vi dico :)

Grazie comunque ;)

EDIT: Esperimenti falliti; se quel parametro va usato in altro modo, non capisco come :|

lolide
14-03-2011, 20:31
Se avessi continuato a leggere la reference, avresti visto il link alle system classes (http://msdn.microsoft.com/en-us/library/ms633574(v=vs.85).aspx#system) che però riguardano i controlli (button, checkbox ecc....)
Per le finestre devi registrare le classi con RegisterClass

Digitando su google "CreateWindowEx example" è uscito questo (http://www.winprog.org/tutorial/simple_window.html) link ;)

php_4ever
14-03-2011, 20:39
Lo so che basta Google e che sono un maledetto rompipalle, ma volevo riuscirci da solo (tranne nei punti in cui mi bloccavo) e un tutorial non fa al caso mio, ma oramai seguirò quello.

Grazie comunque :)

lolide
14-03-2011, 20:44
Originariamente inviato da php_4ever
Lo so che basta Google e che sono un maledetto rompipalle, ma volevo riuscirci da solo (tranne nei punti in cui mi bloccavo) e un tutorial non fa al caso mio, ma oramai seguirò quello.

Grazie comunque :)

Se vuoi riuscirci da solo la soluzione ce l'hai: devi creare la classe con RegisterClass e passarne il nome al posto di quella stringa che hai passato tu.

Se non ci riesci segui il tutorial.

:ciauz:

php_4ever
14-03-2011, 20:55
Beh, grazie di tutto :)

Loading