Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. Visual Studio 6.0
Error C2664: cannot convert par.11 from void * to struct HINSTANCE__ *...
martedì 01 agosto 2006 - 11.07
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
adaco
Profilo
| Newbie
3
messaggi | Data Invio:
mar 1 ago 2006 - 11:07
Buongiorno a tutti e un grazie a chi mi saprà aiutare.
Uso la seguente funzione per aprire la finestra principale del mio main:
CreateWindowEx(0, "PROVA", fullId, WS_CAPTION|WS_SYSMENU, 0, 0, hRes, vRes, NULL, NULL, hInstance, [B]NULL[/B] )
Ma al momento della compilazione ottengo il seguente errore:
[B]error C2664: 'CreateWindowExA' : cannot convert parameter 11 from 'void *' to 'struct HINSTANCE__ *'[/B] seguito dall'avvertimento [B]Conversion from 'void*' to pointer to non-'void' requires an explicit cast[/B]...
Premettendo che:
- Ho capito che, al contrario del C (ambiente dal qual preovengo ma essendo passato dal Java), il C++ non CASTIZZA in automatico il VOID *
- Il [B]CAST esplicito di NULL a 'struct HINSTANCE__ *' o 'HINSTANCE__ *'[/B] non produce risultati
- Ho [B]sostituito a NULL lo 0 ed un tipo CREATESTRUCT (&cs)[/B] ma non c'è stato verso
- Ho provato a compilare mettendo [B]STRICT[/B] nei settings di C/C++ (stò usando il MICROSOFT VISUAL C++): niente da fare
- Ho provato a linkare la [B]<windef.h>[/B] come ho visto consigliare su web ma anche qui senza risolvere niente
Stò cominciando ad essere a corto di idee :dhò: ... Qualcuno mi sa dare una mano? La cosa strana è che passando da CreateWindow() a CreateWindowEx() (a proposito che differenza c'è? :bhò: ) per un po' mi era andata bene!!! Ma ora sono incastrato da giorni su 'stà cosa e non riesco a sbloccarmi :confused: ... Grazie a tutti per l'aiuto :) ...
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mer 2 ago 2006 - 11:28
>- Ho capito che, al contrario del C (ambiente dal qual preovengo
>ma essendo passato dal Java), il C++ non CASTIZZA in automatico
>il VOID *
Se mai CASTA ... come Letizia
castizza non l'ho mai sentito.
>Stò cominciando ad essere a corto di idee :dhò: ... Qualcuno
>mi sa dare una mano? La cosa strana è che passando da CreateWindow()
>a CreateWindowEx() (a proposito che differenza c'è? :bhò: ) per
La differenza è che con la CreateWindowEx() puoi usare gli extended style. Diciamo è una versione aggiornata e revisionata della CreateWindo() e al passo con gli OS + recenti.
>un po' mi era andata bene!!! Ma ora sono incastrato da giorni
>su 'stà cosa e non riesco a sbloccarmi :confused: ... Grazie
>a tutti per l'aiuto :) ...
L'unica cosa che ti posso consigliare, perchè il VC++ + Win32 è un bel casino è, se non hai esperienza, prenderti qualche bel manualotto sulle Win32 da 1000 pagine e studiartelo.
Ciao
David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/
adaco
Profilo
| Newbie
3
messaggi | Data Invio:
mer 2 ago 2006 - 11:41
>Se mai CASTA ... come Letizia castizza non l'ho mai sentito.
Ammetto che il richiamo alla famosa suona meglio (anche se poi, non mi sembra poi tanto CASTA
) ma volevo... Diciamo così... Creare un neologismo
>La differenza è che con la CreateWindowEx() puoi usare gli extended style. Diciamo è una >versione aggiornata e revisionata della CreateWindo() e al passo con gli OS + recenti.
Immaginavo ma... Grazie per l'informazione
>L'unica cosa che ti posso consigliare, perchè il VC++ + Win32 è un bel casino è, se non hai >esperienza, prenderti qualche bel manualotto sulle Win32 da 1000 pagine e studiartelo.
>Ciao
ah ah ah
Se volevi spaventarmi non ci sei riuscito!!!
Provenendo dall'ANSI C casini ne ho visti tanti e ho preso talmente tante tranvate che alla fine o sopravvivi o muori... Io, per fortuna, ho scelto di sopravvivere! Infatti, da buon Cista (si dice così? Caso mai ti "regalo" un'altro neologismo ah ah ah
) ho capito che qualcosa non tornava da parte del compilatore e ho trovato da qualche parte per caso su web qualcuno che suggeriva di concentrarsi sul 10° parametro e non sull'11°!!! Infatti il segreto era CASTare hinstance che è un HANDLE a HINSTANCE ed il compilatore non si incazza più!!! Non ho capito il giro ma così funziona quindi... Va bene.
Grazie davvero per l'interessamento e... Alla prossima!!!
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mer 2 ago 2006 - 11:55
>ah ah ah
Se volevi spaventarmi non ci sei riuscito!!!
>Provenendo dall'ANSI C casini ne ho visti tanti e ho preso talmente
>tante tranvate che alla fine o sopravvivi o muori...
L'ANSI C in confronto non è niente. Lo può imparare anche un bambino alle scuole media. L'unica cosa un po' complessa sono i puntatori e l'aritmetica dei puntatori.
Il C++ è decisamente più avanzato, con classi, oggetti, ereditarietà, ecc.
Il Visual C++ è ancora di più visto che è C++ + tutto lo stack di funzioni Win32 che sono qualche migliaio e poi se programmi per Windows anche le MFC altro pacco.
Ciao
David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/
adaco
Profilo
| Newbie
3
messaggi | Data Invio:
mer 2 ago 2006 - 12:01
Premesso che sono convinto che nel nostro lavoro non si è mai finito di imparare (come dalla vita del resto) ti assicuro che l'ANSI C mi ha insegnato un bel po' di cose che poi mi sono servite per tutti gli altri linguaggi che ho incontrato
Java compreso...
P.S: La risoluzione del problema in oggetto, ad esempio, non sarebbe stata scritta in nessun manuale al mondo e mi fa piacere pensare che derivi dalla forma mentis "regalatami" dall'ANSI C... Posso sbagliare ma preferisco mantenere questa mia visione, se vuoi anche un po' "romantica", del mio lavoro
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mer 2 ago 2006 - 12:05
>Premesso che sono convinto che nel nostro lavoro non si è mai
>finito di imparare (come dalla vita del resto) ti assicuro che
>l'ANSI C mi ha insegnato un bel po' di cose che poi mi sono servite
>per tutti gli altri linguaggi che ho incontrato
Java compreso...
Io non ho detto questo, lo stai dicendo tu.
Io ho detto solo che apprendere l'ANSI C rispetto ad altri linguaggi come Visual C++ è decisamente più facile. Non ho detto che imparare l'ANSI C non serve a niente.
Ciao
David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !