Connessione al database con Visual Basic NET? Lo trovi su Opentraining.it Visual Basic Italia
PRINCIPALE > ARTICOLO

Eseguire una ricerca veloce nell' archivio delle risorse di Visual Basic Italia®: 

Preso dall'archivio...

Premere il pulsante sotto per accedere direttamente ad un articolo o ad un esempio preso in modo casuale dall'archivio.



Ultimo e-book pubblicato:

"INTRODUZIONE AI CSS"

Lo scopo del CSS language è quello di controllare lo stile dei vari elementi che concorrono a formare un
documento HTML.
Si può operare in tre modi collegamento ad un foglio di stile esterno;definizione degli stili all'inizio
del documento utilizzo della proprietà style all'interno di un Tag HTML (embedded style). Questo e-book introduttivo
servirà per apprendere tali nozioni fondametali dei fogli di stile.

Prezzo: € 0.0.
Presentazione:
REAL SOFTWARE RILASCIA LA VERSIONE 5.0 di REALbasic per Windows






Gorizia, 5 maggio 2003 - Active, distributore in esclusiva di REALSoftware, Austin, Tx, annuncia la disponibilità di REALbasic 5.0 per Windows, uno strumento per lo sviluppo semplice da usare che permette agli utenti Windows di tutti i livelli di creare applicazioni personalizzate e di compilarle sia per la piattaforma Windows che per quella Macintosh.
[>>]

http://www.active-software.com

 

Contatti. Utilizzare l'email generica per domande relative al sito:
Porre domande relative al sito
oppure scrivere ad un responsabile di area.
Responsabile del sito: >Andrea Martelli
Responsabile area "Corso di VB":
> Giorgio Abraini

Visual Basic ed il protocollo NNTP: creare un newsreader (sesta parte)

Questa lezione, consultata da 2194 utenti, è stata giudicata di ottimi contenuti , con un'esposizione perfettamente comprensibile e con un livello di approfondimento ottimo da 52 votanti.


Premessa

Nel corso di questo articolo si porranno le basi per la definizione dei parametri di connessione al server delle news. In particolare tre elementi risultano necessari: il nome o l'indirizzo del server al quale connettersi, il time-out ossia il tempo di attesa massimo per qualsiasi tipo di comunicazione (connessione, ricezione informazioni, invio comandi e così via) e porta di comunicazione.


Le scelte dell'utente

Adesso che la variabile che conterrà il nome del server delle news è stata dichiarata, non resta altro che prevedere nel modulo di codice di Form1 una casella di testo con la quale l'utente finale abbia la possibilità di definirla.
Si può pertanto pensare di creare sul piano di Form1 un'area riservata alle impostazioni di connessione. Il risultato, anticipando il contenuto dei prossimi capitoli può essere simile a quello visualizzato in figura:

La figura mostrata sopra si riferisce all'interfaccia sviluppata in ambiente Visual Basic .NET ma il risultato ottenuto con Visual Basic 6 potrà essere del tutto simile.

Se si denomina ora il pulsante presente sul piano btnConnessione, la casella di testo in corrispondenza al nome del server 'txtServer', quella in corrispondenza al numero di porta di connessione 'txtPorta' e per finire quella in corrispondenza al TimeOut 'txtTimeOut' si può ottenere una prima idea di quella che sarà l'interfaccia finale dell'applicazione.
L'utente finale dovrà avere la possibilità di scegliere i parametri di connessione fino alla fine, ossia fino al momento in cui, premendo il pulsante btnConnessione, tenterà una comunicazione con il server.
Pertanto solamente alla pressione di btnConnessione e quindi allo scaturire dell'evento btnConnessione_Click si assoceranno le scelte dell'utente alle variabili globali definite nel modulo Modulo_Impostazioni:

VB6:
Private Sub btnConnessione_Click()

'controllo dell'impostazione del nome del server da parte dell'utente
If Len(txtServer.Text) = 0 Or Trim(txtServer.Text) = "" Then
MsgBox("Impossibile portare a termine l'operazione." & vbCrLf & "Indicazione del server delle news mancante .", MsgBoxStyle.Critical)
Exit Sub
Else

'una volta passato il controllo viene assegnato alla variabile il valore 'della casella di testo
NomeServer = txtServer.Text
End Sub


VB.NET:
Private Sub btnConnessione_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConnessione.Click
'controllo dell'impostazione del nome del server da parte dell'utente
If Len(txtServer.Text) = 0 Or Trim(txtServer.Text) = "" Then
MsgBox("Impossibile portare a termine l'operazione." & vbCrLf & "Indicazione del server delle news mancante .", MsgBoxStyle.Critical)
Exit Sub
Else

'una volta passato il controllo viene assegnato alla variabile il valore 'della casella di testo
NomeServer = txtServer.Text
End Sub

E' poi da notare che tutti i parametri di connessione sono opzionali, al di fuori del nome del server (la variabile NomeServer).
In altre parole: sia nel caso del numero di porta dedicata a NNTP sia nel caso della scelta del time-out, un valore nullo (una stringa vuota nella casella di testo corrispondente all'opzione di connessione) può essere facilmente sostituita da un valore predefinito dallo sviluppatore.
A differenza del nome del server che, è importante ripeterlo, deve essere lasciato alla scelta di chi utilizza l'applicazione una volta compilata.


Il Time-Out

Altro parametro di impostazione per la connessione al server delle news è il time-out.
Con questo termine si definisce un tempo massimo di attesa che può essere applicato in diverse occasioni. Come ad esempio proprio durante la connessione al server delle news: una risposta che non perviene entro un certo numero di secondi prestabilito deve far supporre un errore di comunicazione tra client e server oppure un'errata impostazione dei parametri di connessione.
Il time-out è un valore opzionale nella struttura di un newsreader in quanto in un caso limite può anche non essere previsto affatto.
Viene tuttavia utilizzato frequentemente per evitare all'utente finale lunghi tempi di attesa.
Questo parametro è applicabile più in generale in tutti quei casi in cui è richiesta la risposta dal server e generalmente viene impostato di default sui 30 oppure sui 60 secondi.
Anche il time-out necessita di una variabile che è utile, come nel caso del nome del server delle news, impostare come globale.
Ed insieme alla nuova variabile TimeOut è bene dichiarara anche la variabile di testo che conterrà la risposta dal server.

Ecco che pertanto il codice rispettivamente di Modulo_Impostazioni.bas e Modulo_Impostazioni.vb si arricchisce di questi due nuovi elementi:

VB6:

'IMPOSTAZIONI PER LA CONNESSIONE AL SERVER DELLE NEWS
Public NomeServer As String 'il nome del server delle news a cui connettersi
Public TimeOut As Integer 'il tempo massimo di attesa alla risposta del server
Public Risposta As String 'la risposta in formato testuale ricevuta dal server


VB.NET:

Module Modulo_Impostazioni
'IMPOSTAZIONI PER LA CONNESSIONE AL SERVER DELLE NEWS
Public NomeServer As String 'il nome del server delle news a cui connettersi
Public TimeOut As Integer 'il tempo massimo di attesa alla risposta del server
Public Risposta As String 'la risposta in formato testuale ricevuta dal server
End Module

Ed anche in questo caso è necessario lasciare all'utente la definizione della variabile sfruttando la pressione del pulsante btnConnessione ossia l'evento btnConnessione_Click.
A differenza però della variabile NomeServer, TimeOut essendo opzionale verrà impostato sul valore di 30 (espresso in secondi) nel caso in cui l'utente lasci vuoto il campo corrispondente alla casella di testo TxtTimeOut:

VB6 e VB.NET:

'il tempo di attesa durante la connessione al server è invece un parametro
'opzionale' pertanto se non dovesse essere indicato, verrà impostato
'ad un valore arbitrario: 30 secondi.

If Len(txtTimeOut.Text) = 0 Or Trim(txtTimeOut.Text) = "" Then
TimeOut = 60
Else
TimeOut = CInt(txtTimeOut.Text)
End If

La funzione CInt che racchiude il valore della casella di testo txtTimeOut non serve altro che a trasformare in un intero il contenuto della TextBox che originariamente è in formato di testo e pertanto non adatto ad essere memorizzato all'interno di una variabile Integer com'è invece TimeOut.
Il time-out alla risposta del server sarà poi associato ad una funzione definita come AttesaRisposta, utile come già detto per evitare lunghi e spesso inutili tempi di attesa.
Prima di passare ad analizzarla è necessario inserire il controllo Microsoft Winsock all'interno del progetto.
Questa operazione si compie premendo col pulsante destro del mouse sulla casella degli strumenti che si trova sulla sinistra dell'ambiente di sviluppo di Visual Basic .Net e scegliendo dal menu che comparirà la voce 'Personalizza Casella degli strumenti':

Apparirà in questo modo la finestra che permette l'aggiunta e la rimozione dei controlli sul piano di lavoro. Una volta selezionata la scheda denominata 'Componenti COM' selezionare col segno di spunta la voce Microsoft Winsock Control e chiudere la finestra premendo il pulsante OK:

Trascinare quindi sul piano di lavoro il controllo Winsock di cui sarà apparsa l'icona nella scheda Dati della casella degli strumenti. Nel caso di Visual Basic 6 invece sarà sufficiente premere col tasto destro sul pannello degli strumenti, selezionare Componenti dal popup menu che apparirà e dalla finestra denominata Componenti selezionare col segno di spunta la voce Microsoft Winsock, proprio come mostrato nell'immagine sottostante: