PDA

View Full Version : [C/C++]Windows application


m.distrutti
15-03-2008, 18:21
sto cercando di compilare una finestra dimensione 640*480

ma mi stanno sorgendo dei dubbi ora io sinceramente ho usato poco windows.h e i vecchi prog che ho fatto non li ho piu ora cmq stavo cercando di eseguire questo codice nell'inizializzazione della finestra


wndHandle = CreateWindow("DirectXExample",
"DirectXExample",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
640,
480,
NULL,
NULL,
hInstance,
NULL);


VisualSTudio mi restituisce l'errore al secondo parametro
error C2664: 'CreateWindowExW' : cannot convert parameter 2 from 'const char [15]' to 'LPCWSTR'
guardando dal sito della microzoz il tipo dovrebbe essere LPCTSTR :S
ho provato a metterci una L per il set di caratteri :S in questo modo L"DirectXExample"
ma l'errore rimane identico

PS: nella dichiarazione dell'entry point int WINAPI WinMain c'e' un parametro LPSTR(col quale passo la stringa di parametri credo se ho capito bene) , ma nel libro che sto leggendo c'e' scritto LPTSTR(pur provandolo mi da errore di compilazione)

m.distrutti
15-03-2008, 20:03
risolto :S

TEXT("e il testo qui"); :cool:

EDIT: con il borland non facevo ste cose cmq :S:S mi sto reimparando tutto rotfl

stdecden
15-03-2008, 20:06
Oppure
L"Hello World"
o
Project->Properties->Configuration Properties->General->Character Set->Use Multi-Byte character set

m.distrutti
15-03-2008, 20:08
Oppure
L"Hello World"
o
Project->Properties->Configuration Properties->General->Character Set->Use Multi-Byte character set

gia ma lo avevo gia provata senza successo :cry: cmq grazie per la lista dei menu , sto Visual Studio mi sembra un casino con tutti sti menu ihih

andbin
15-03-2008, 20:15
TEXT("e il testo qui");Puoi decidere di scrivere il sorgente in modo che sia tranquillamente compilabile tanto in ANSI quanto in UNICODE. Questo presuppone l'utilizzo di macro come TEXT, dei tipi di dato come TCHAR, LPTSTR ecc... e molte altre macro di "mappatura" delle funzioni.

Ma puoi anche decidere di scrivere il sorgente usando esplicitamente un set o l'altro, ad esempio scrivendo printf("xyz") (sempre ANSI) o wprintf(L"xyz") (sempre UNICODE). Ma poi ovviamente nelle opzioni del progetto devi impostare il set di caratteri appropriato!!

m.distrutti
16-03-2008, 08:09
grazie mille^_^