|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 19391
|
[VISUAL C++ 2010] Applicazione con interfaccia grafica che non richieda framework
Ciao a tutti,
lavoro in un negozio di informatica e per personalizzare i PC che trattiamo ho sviluppato un'applicazione C++ (con dev-c++) che va a modificare i vari settaggi di Windows in modo automatico. Per ragioni di praticità mi trovo costetto ad implementare un'interfaccia grafica. Sono quindi passato a Visual C++ 2010 Express, ma ho il problema delle .NET Framework necessarie: per eseguire l'applicazione sui vari PC sono costretto ad installare prima le Framework, vanificando quindi la praticità della cosa. Ho provato a sviluppare una Win32 nativa, però nel momento in cui inserisco un form sono costretto a convertire l'applicazione in CLR, con conseguenti Framework necessarie. Come posso risolvere? Solo con una versione più vecchia di Visual C++? Grazie in anticipo
__________________
Il 90% dei problemi di un PC si trova tra la tastiera e la sedia
![]() |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 1056
|
Quote:
Cioè se aggiungi un form, automaticamente lo rendi un progetto .NET Per sviluppare GUI indipendenti, devi programmare direttamente con le API di windows in C (usando Visual Studio) senza form builder visuali. Sennò esistono le librerie Qt o lewxWidgets che sono scritte in C++ lavorando ad oggetti. Le Qt hanno il Qt Creator, che è un IDE che ti permette di costruire frame e dialog in modo visuale. Anche le wxWidgets hanno un IDE, wxDev-C++ Io ti consiglio le Qt, sono molto leggere e facili da usare, comunque ho usato anche le wxWidgets e non sono male. |
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 19391
|
Quote:
Grazie intanto
__________________
Il 90% dei problemi di un PC si trova tra la tastiera e la sedia
![]() |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Sep 2007
Messaggi: 329
|
Se non hai bisogno di cose sofisticate usa direttemente le API di Windows, io le trovo semplici tanto quanto i vari framework e alla fine non hai sbattimenti con DLL e cose varie da portarti dietro. Cercavo anche io un framework "ideale", alla fine mi sono scritto un paio di classi che usano direttamente le API e vivo felice.
Con le wx ho scritto alcuni applicativi, però ricordo che ho dovuto sbattermi non poco su alcune cose che non funzionavano a dovere. Se, come me, lo fai per lavoro... dedicare una settimana a una libreria scritta da te ti darà sicuramente vantaggi e flessibilità in futuro.
__________________
Canon EOS 5D3 | 16-35 f/4 L IS | 24-105 f/4 L IS | 70-200 f/4 L IS | 14 f/2.8 | 24 f/1.4 L | 35 f/1.4 | 135 f/2.0 L | Canon 430EX |
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Mar 2008
Messaggi: 267
|
Quote:
|
|
|
|
|
|
|
#6 | ||
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Quote:
Poi uno guarda cosa si può fare con Qt e la facilità con cui si riescono a fare interfacce molto moderne, pure multipiattaforma, che a pensare di realizzare con Win32 ti prende lo spavento e abbandoni tutto. |
||
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 1056
|
E' normale che lavorando direttamente con le API incontri delle difficoltà a livello pratico, ma sono cose che si superano dopo poco.
Anch'io personalmente oggi lavoro direttamente con le API in C, comunque a quello che ho capito il progetto che dovrà realizzare non è professionale, quindi in poche parole meglio farlo con facilità che "bene". Poi alla fine anche programmando con le wxWidgets o Qt non è che esca proprio una cosa senza senso, sono ben fatte, anche se includono molto codice che ingombrano l'exe inutilmente, ma almeno ti risparmiano la fatica di creare frame programmandoli direttamente da codice. Lavorando con Visual Studio alla fine sarai sempre dipendente, minimo, dalle librerie Visual C++ redistribuitable. Poi se crei anche Form ecc... , allora sarai dipendente anche dal framework .NET |
|
|
|
|
|
#8 | |||
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Quote:
Quote:
|
|||
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 19391
|
Cosa intendi con questa frase? Esiste quindi un modo per programmare in Visual C++ ed avere un eseguibile completamente autonomo?
__________________
Il 90% dei problemi di un PC si trova tra la tastiera e la sedia
![]() |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 19391
|
Quote:
__________________
Il 90% dei problemi di un PC si trova tra la tastiera e la sedia
![]() |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12936
|
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Aug 2004
Messaggi: 1703
|
Quote:
l'esegibile ti viene un po grande, mi sembra un 3-4mega ma non hai bisogno di altro se lo includi staticamente. |
|
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 19391
|
Quote:
__________________
Il 90% dei problemi di un PC si trova tra la tastiera e la sedia
![]() |
|
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Aug 2004
Messaggi: 1703
|
wx devc++ che è già pronto anche se a volte crasha. in alternativa c'è codeblocks.
|
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Nov 2001
Città: Bastia Umbra (PG)
Messaggi: 6395
|
Quote:
__________________
:: Il miglior argomento contro la democrazia è una conversazione di cinque minuti con l'elettore medio :: |
|
|
|
|
|
|
#16 |
|
Member
Iscritto dal: Mar 2008
Messaggi: 267
|
Basta compilare il proprio progetto staticamente (attraverso la relativa opzione nelle opzioni del progetto, impostando Multithread al posto di DLL Multithread).
Nel caso si utilizzi l'interfaccia grafica basta fare un progetto MFC e selezionare l'opzione che ho indicato sopra, assieme alla scelta di includere MFC come libreria statica. In questo modo si può avere un progetto C++ con tanto di GUI, senza dover dipendere da .NET o dal Visual C++ Redistributable (dato che alla fine tutto ciò che serve sarà incluso nell'eseguibile, anche se ovviamente peserà un po' di più rispetto ad uno compilato dinamicamente). |
|
|
|
|
|
#17 | |
|
Member
Iscritto dal: Aug 2007
Messaggi: 70
|
Quote:
ma quasto lo posso fare anche in visaul c# perche dovrei fare un programmino per il lavoro solo che al lavoro non c'e il framework e non c posso installare nulla e se si c sarebbe una guida che mostra dove andare ad impostare per i collegamenti statici |
|
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Vai su QT e QtCreator. Dopo non userai più Dev-C++ (o le sue evoluzioni). Con le QT l'eseguibile è completamente autonomo, basta mettere le DLL nella stessa directory dell'eseguibile. Quindi in sostanza puoi tranquillamente portarti dietro una directory mettere quella directory sul PC e lanciarlo direttamente. Poi si potrebbero studiare anche altri metodi per creare un solo eseguibile dalle dll e dall'eseguibile...ma non vedo quale differenza ti possa fare. Ultima modifica di cionci : 30-04-2011 alle 10:18. |
|
|
|
|
|
|
#19 | |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 19391
|
Quote:
..e fu così che passai alle Qt Ho avuto un'impressione di solidità e stabilità dal primo istante, non credo che mi muoverò più da quì. Adesso sto cercando di correggere il vecchio programma per farlo compilare anche con Qt creator (ho vari problemi con cout, strcat, ifstream e cose così, dovuti a librerie obsolete che usavo con Dev-C++) e poi procedo con il resto...
__________________
Il 90% dei problemi di un PC si trova tra la tastiera e la sedia
![]() |
|
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ooops, non avevo visto che era un thread vecchio
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:30.





















