Giandomenico's page
home
Il server OLE VBRasEng

di Giandomenico De Sanctis - gidesay@yahoo.com
versione 1.0 - 1998

Il server OLE VBRasEng permette ai programmi Visual Basic di interfacciarsi con la libreria dei servizi di accesso remoto (RAS = remote access services), presente in Windows 95/98 ed NT. Il server è a 32-bit, compilato con VB 5; può quindi essere usato da programmi VB 5, oppure VB 4- versione 32-bit.
La libreria dei servizi di accesso remoto (RASAPI32.DLL) controlla le connessioni dati aperte attraverso un dispositivo di comunicazione, tipicamente un modem, oppure un adattatore ISDN.
Fra le funzioni della libreria, ci sono la gestione degli indirizzi della agenda telefonica (connessioni telefoniche predefinite: creazione, aggiornamento, cancellazione), e la gestione delle connessioni attive (conteggio, lettura dello stato, ecc.).
Il server OLE tenta di rendere più facili per lo sviluppatore VB le funzioni esportate dalla RASAPI32. Esso è basato su un esempio Microsoft. Per installarlo, decomprimere VBRASENG.ZIP, e copiare VBRASENG.DLL nella directory \WINDOWS\SYSTEM; poi, registrare il server digitando il seguente comando nella finestra del menù Start/Esegui...:
REGSVR32.EXE VBRASENG.DLL

Per l'uso in un programma VB, aprire il progetto del programma, poi aprire la finestra Project/References, selezionare il "RAS engine", e cliccare su OK.

Nelle seguenti tabelle sono elencate le proprietà ed i metodi esposti dal server.

Proprietà/metodo Lista dei parametri Tipo proprietà o del valore di ritorno del metodo Descrizione
       
RASEng     l'oggetto principale della classe; nell'inizializzazione, carica la RASAPI32.DLL, e memorizza tutte le entrate RAS e tutte le connessioni attive in una coppia di collezioni interne
Proprietà      
OSVersion   Single questa funzione ritorna il tipo del sistema operativo: 0 per Win32, 1 per Win95, 2 per WinNT
OSBuildNumber   Long  
OSType   Long  
Metodi      
RASError   RASError imposta un nuovo puntatore all'oggetto RASError
Connections "Optional ByVal Index as Variant" Object se l'indice manca, imposta un puntatore alla collezione di tutte le connessioni attive al momento dell'inizializzazione dell'oggetto RASEng; se è passato un indice, imposta un puntatore alla connessione con quest'indice
PhoneEntries "Optional ByVal Index as Variant" Object se l'indice manca, imposta un puntatore alla collezione di tutte le entrate di Accesso Remoto trovate al momento dell'inizializzazione dell'oggetto RASEng; se è passato un indice, imposta un puntatore all'entrata RA con questo indice
         
connections     quest'oggetto gestisce la collezione di tutte le connessioni attive
Proprietà      
Count   Integer contatore delle connessioni
Metodi      
AddConnection strNewPhoneNumber as String strNewCallbackNumber as String strNewUsername as String strNewPassword as String strNewDomain as String boolAsync as Boolean" Connection aggiunge una nuova connessione, chiamando il numero di telefono via modem se necessario; il flag boolAsync indica se il programma è fermato fino a che la connessione viene attivata (Async = false), oppure se il programma può continuare immediatamente (Async = true)
RemoveConnection lngIndexToRem Long rimuove (chiude) la connessione attiva con l'indice assegnato
         
Conn     un elemento nell'oggetto 'connections'
Proprietà      
hRasConn   Long puntatore alla struttura della connessione RAS
EntryName   String  
Index   Integer indice della connessione nella collezione delle connessioni attive
State   Long codice di stato
DeviceType   String  
DeviceName   String  
LANA   Byte  
WorkstationName   String  
IPXAddress   String  
IPAddress   String  
         
PhoneEntries     collezione delle entrate di Accesso Remoto
Proprietà      
Count   Integer numero di entrate trovate
Metodi      
AddEntry     attiva la finestra di dialogo standard di RAS per l'aggiunta di una nuova entrata
         
PhoneEntry     un elemento nell oggetto 'PhoneEntries'
Proprietà      
EntryName   String  
PhoneNumber   String  
CallbackNumber   String  
UserName   String  
Password   String  
Domain   String solo per entrate relative alla rete locale
Index   Integer indice dell'entrata nella lista delle entrate
Metodi      
DialEntry "boolAsync as Boolean " Connection chiama l'entrata selezionata; questo metodo richiama AddConnection dell'oggetto 'connections', passandogli tutti i parametri dall'entrata selezionata
EditEntry     attiva la finestra di dialogo standard del RAS per la modifica dell'entrata
         
Error     oggetto per gestire gli errori RAS
Proprietà      
ErrorNumber   Long codice di errore RASEngine
Description   String descrizione interna dell'errore RASEngine
Metodi      
fcnRASErrorString   String ritorna la stringa associata con il codice di errore interno RASEngine
Clear     resetta il codice e la descrizione dell'errore RASEngine



Programmi di esempio


In VBRASENG.ZIP è incluso il progetto d'esempio TXRASENG : creando un oggetto RASEngine, lista tutte le entrate RAS esistenti, le connessioni attive, e cliccando due volte su una entrata RAS attiva una connessione, che viene subito aggiunta alla lista delle connessioni attive

Mail contact