Connessione ad Internet

venerdì 11 luglio 2003 - 16.15

trinity Profilo | Guru

Ragazzi, sapete farmi vedere una procedura per far connettere e disconnete un computer ad internet? Ovviamente tale pc deve aver configurato a monte una connessione internet

trinity Profilo | Guru

In effetti non devo fare altro che una semplice connessione ad internet prendere per esempio la connessione che usa explorer, posso anche usare quella manon so come farla partire da vb net in vb6 c'era no mapicontrol che mi aiutavano qua cosa c'è

Brainkiller Profilo | Guru

Le soluzioni possono essere due.
O fai uno script batch utilizzando il comando rasdial.exe di Windows, poi il batch lo richiami dall'applicazione .NET.
Oppure usi l'interoperabilità e chiave delle funzioni Win32 Native come InternetAttemptConnect che permette di collegare la macchina ad Internet.
Chiaramente se non sai usare il metodo P/Invoke per chiamare le funzioni Win32 è meglio se vai un po' a studiartelo sull'SDK del .NET Framework :)

Ciao
David

trinity Profilo | Guru

Ma c'è una riga di codice in vb.net che richiama semplicemente la finestra di connessione di accesso remoto e poi da lì uno effettua la connessione ad Internet?

trinity Profilo | Guru

Ragazzi,
sto utilizzando con una shell il file exe rasphone di windows in modo tale che posso richiamare le connessione di accesso remoto.

Il mio problema è che immediatamente dopo la shell parte un thread, io devo ffare in modo che si attende prima la connessione avvenga e poi far partire il thread.

c'è un modo per controllare il tempo di connessione? Un blocco o qualcos'altro?

grazie e ciao

Brainkiller Profilo | Guru

Fissati un timeout tu.
Cronometra quanto ci mette a fare la connessione.
Dopodichè appena lanciato il comando rasdial.exe fai passare tot secondi prima di procedere con le altre istruzioni.
Se la connessione impiega circa 30 secondi dal momento in cui viene lanciata al momento in cui è effettivamente connesso ad internet il computer, usi l'istruzione Thread.CurrentThread.Sleep(30000) in questo modo il Thread dormirà per 30 secondi e poi continuerà l'esecuzione.

Ciao

trinity Profilo | Guru

Grazie, ora ci provo, ti volevo chiedere una cosa conosci un stringa che poi permette al modem di disconnettersi da internet?

Ciao

Brainkiller Profilo | Guru

Con il comando rasdial.exe trovi un parametro che è /Disconnect che serve per interrompere la connessione.
Ciao
David

trinity Profilo | Guru

David, ho fatto questo tipo di stringa,

dim conn

conn = Shell("Rasphone coll", AppWinStyle.Hide)

per connettere e funziona

invece per disconnettere faccio questa

dim conn

conn = Shell("Rasphone /Disconnect", AppWinStyle.Hide)

solo che non mi disconnetto e mi da un messaggio con una serie di parametri.

Mi puoi dire dove sbaglio.

Grazie per la tua disponibilità.

Ciao

Brainkiller Profilo | Guru

Trinity,
ma tu li leggi i messaggi che scrivo? O leggi solo ciò che ti fa comod?
Ti ho detto poco fa di usare rasdial.exe /disconnect per disconnettere.... non rasphone!

trinity Profilo | Guru

Quindi a questo punto per la connessione potrei utilizzare rasdial.exe /Connect invece di Rasphone o sbaglio?

Comunque la disconnessione funge.

ciao e grazie

trinity Profilo | Guru

ragazzi, volevo chiedere una informazione, su vb 6 esiste un ocx che si chiama msinet.ocx che permette di effettuare download da siti web, questo io l'ho utilizzato in un progetto e mi da la possibilità di inserire user e password e percorso ftp per scrivere o scaricare file.

In vb net esiste un controllo che fa le stesse funzioni?

Penso che se sia un nuovo prodotto vb net debba assolutamente avere anche i controlli di vb6.

ciao

Brainkiller Profilo | Guru

Ti ho risposto anche qui per completezza, comunque hai fatto bene a seguire il mio consiglio di aprire un Thread nuovo. Grazie.
Ciao

Ciao Trinity,
effettivamente l'OCX di cui parlavi permette di fare queste operazioni.
In .NET c'è un intero namespace dedicato a questo argomento sotto il nome di System.Net e System.Net.Sockets.
Con i Sockets puoi creare le stesse cose che faceva l'OCX in VB6.
Certamente è più complesso perchè non c'è a disposizione un controllo già pronto come in VB6 pronto all'uso.
Calcola che in Visual C++ non c'è niente di preconfezionato se non i pulsanti le listbox e pochi altri controlli, per tutto il resto dovevi costruire tutto con le Win32API.
Visual Studio .NET è un misto infatti fra i due linguaggii (Visual Basic 6.0 e Visual C++ 6.0) e quindi ci sono molti più controlli ma non tutti. Quelli che mancano devi implementarli tu.

Ciao
David De Giacomi
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5