Newsgroup: it.comp.lang.c++
Titolo: C++ lanciato da Visual Basic

Quello che faccio:
lancio una delle funzioni del mio programma in Visual Basic
Dopo un'elaborazione di base, lancio un eseguibile scritto in C++ ( e ne
aspetto la chiusura)
questo programma in C++ scrive dei dati
li leggo con VB
li visualizzo.
Tutto bene, tranne un piccolo particolare:
quando lancio il programma in C++ con Call
ShellAndWait("nome_del_programma.exe")
mi compare (per un decimo di secondo (il tempo della sua esecuzione)) la
finestra dos del programma.
Si può nascondere?

Salvatore Paci ha scritto:

Salvatore, sei un caso patologico! (senza offesa, sto solo scherzando ;-)
A parte il fatto che sei OT: cosa vuoi che ne sappiamo su questo 
newsgroup di cosa sia la funzione ShellAndWait() di Visual Basic (che 
tra l'altro non mi pare esista come funzione nativa) e come funzioni?
Perche' non fai una bella DLL in C++ che esporta una funzione che esegue 
l'elaborazione e ti restituisce i risultati in una struttura dati o una 
stringa che tu possa ricevere direttamente da Visual Basic, senza fare 
troppi passaggi (che tra l'altro rallentano l'operazione, e il tuo scopo 
primario era velocizzarla, no?
Altrimenti puoi chiedere sul newsgroup it.comp.lang.visual-basic, li' 
dovrebbe esserci ancora gente in gamba con quel linguaggio.
-- 
Roal Zanazzi

 tra l'altro non mi pare esista come funzione nativa) e come funzioni?
****
Credo di non essere OT in quanto chiedo se esista in C++ qualcosa del
genere:
Me.visible=false

 ha scritto in it.comp.lang.c++ :

La finestra non è un concetto previsto dal C++ ma dall' eventuale GUI del
sistema operativo che stai utilizzando.
Dato che suppongo che stai utilizzando una delle tante versioni di Windows,
e che la questione non sembra essere di Visual Basic banale, ti consiglio
di chiedere su it.comp.programmare.win32

 Soviet
Non c'è interfaccia grafica. E' un "console application" (se si dice così). 

 tra l'altro non mi pare esista come funzione nativa) e come funzioni?
****
Credo di non essere OT in quanto chiedo se esista in C++ qualcosa del
genere:
Me.visible=false
*****************
Evidentemente mi riferivo ad una funzione di VB che "avrei" voluto trovare 
in C++
Allora...formulo nuovamente (e con termini diversi):
Un eseguibile scritto con C++ (di tipo console application) può essere 
eseguito senza che appaia la finestra in dos?
Grazie!
"Soviet_Mario" <Sov...@MIR.CCCP> ha scritto nel messaggio 
news:CDeLg.94940$zy5.1...@twister1.libero.it...


 
Ti invito ancora una volta a leggere il manifesto di questo gruppo (lo 
trovi nei vecchi messaggi).
Per domande come questa, relative alla programmazione su piattaforma 
Microsoft Windows, sarebbe bene rivolgersi ad altri newsgroup ad essa 
dedicati, ad esempio quelli della geraechia microsoft.public.* o
it.comp.programmare.win32
Spero che li' troverai una risposta risolutiva.
-- 
Roal Zanazzi

 it.comp.programmare.win32
***
Ammetto di non aver letto il manifesto (per pigrizia, si intende) però...
ammesso che ci sia scritto qualcosa di simile (o =) a quello che hai detto
tu... credo che la visibilità o meno di una finestra possa essere legata
alle conoscenze specifiche del linguaggio utilizzato per produrla.

alle conoscenze specifiche del linguaggio utilizzato per produrla.
No.  A meno di definire cosa sia una "finestra", visto che lo standard
ISO del C++ non lo sa, la sua "visibilità" è legata a conoscenze
specifiche del sistema operativo che stai usando.

 
(Purtroppo, ma a ragione) lo standard del linguaggio C++ non accenna a 
nulla che abbia a che fare con il concetto di "finestra", ne' tanto meno 
ad eventuali libreria di classi che lo definiscono.
Poiche' il topic di questo newsgroup e' _il linguaggio C++ come definito 
dallo standard relativo_, ne deriva che la tua domanda e' OT.
Ti ho gia' indicato su quali newsgroup puoi chiedere.
N.B. Tra l'altro il tuo non e' un problema relativo ad una "finestra" 
implementata in C++, dato che la console window di Microsoft Windows e' 
opera del sistema operativo, quindi hai buone probabilita' che la tua 
domanda trovi una risposta tra le funzioni dell'API di Windows (che qui 
sono molto OT).
-- 
Roal Zanazzi

 Non vorrei tu pensassi che il mio sia un accanimento verso di te,
***
Non lo penso minimamente e, anzi, mi scuso per il mio approccio un po' duro 
(a volte).
Intanto vi do una buona notizia: ho risolto il mio problema.
Come????
Da pioniere fortunello.
Allora...
ho aperto il Dev-C++ ed ho scelto come tipo di applicazione "windows 
application" (invece che console application)
Mi sono comparse un sacco di righe tipo...
.............................
#include <windows.h>
/* Declare Windows procedure */
LRESULT CALLBACK WindowProcedure(HWND, UINT, WPARAM, LPARAM);
..............................
ho semplicemente accodato il mio codice a tutto ciò che Dev-C++ aveva 
scritto.
Adesso il programma viene normalmente lanciato da VB e non si vede la 
finestra che, come dovresti sapere, ***e'
opera del sistema operativo***
:)))))))))))))))
Grazie di tutto e scusate le mie incursioni a "bassa quota".
Ciao

 ..............................
Giusto per evitare fraintendimenti futuri: la spatafiata che ti ha
scritto Dev-C++ *e'* parte del sistema operativo, ovvero e' come
Windows pretende che si faccia per ottenere il risultato da te
desiderato. Col linguaggio C++ standard non ha sostanzialmente niente a
che fare.
Per questo, scrivendo in un gruppo specializzato sulla programmazione
in Windows avresti probabilmente avuto una risposta prima e senza
polemiche.
Ciao,
Nicola