Condividi tramite


Aggiunta di una connessione di rete

Per stabilire una connessione a una risorsa di rete descritta da una struttura NETRESOURCE , un'applicazione può chiamare WNetAddConnection2, WNetAddConnection3 o la funzione WNetUseConnection . Nell'esempio seguente viene illustrato l'uso della funzione WNetAddConnection2 .

L'esempio di codice chiama la funzione WNetAddConnection2 , specificando che il sistema deve aggiornare il profilo dell'utente con le informazioni, creando una connessione "memorizzata" o persistente. L'esempio chiama un gestore errori definito dall'applicazione per elaborare gli errori e la funzione TextOut per la stampa.

DWORD dwResult; 
NETRESOURCE nr; 
//
// Call the WNetAddConnection2 function to make the connection,
//   specifying a persistent connection.
//
dwResult = WNetAddConnection2(&nr, // NETRESOURCE from enumeration 
    (LPSTR) NULL,                  // no password 
    (LPSTR) NULL,                  // logged-in user 
    CONNECT_UPDATE_PROFILE);       // update profile with connect information 
 
// Process errors.
//  The local device is already connected to a network resource.
//
if (dwResult == ERROR_ALREADY_ASSIGNED) 
{ 
    printf("Already connected to specified resource.\n"); 
    return dwResult; 
} 
 
//  An entry for the local device already exists in the user profile.
//
else if (dwResult == ERROR_DEVICE_ALREADY_REMEMBERED) 
{ 
    printf("Attempted reassignment of remembered device.\n"); 
    return dwResult; 
} 
else if(dwResult != NO_ERROR) 
{ 
    //
    // Call an application-defined error handler.
    //
    printf("WNetAddConnection2 failed.\n"); 
    return dwResult; 
} 
 
//
// Otherwise, report a successful connection.
//
printf("Connected to the specified resource.\n"); 

La funzione WNetAddConnection è supportata per la compatibilità con le versioni precedenti di Windows for Workgroups. Le nuove applicazioni devono chiamare la funzione WNetAddConnection2 o la funzione WNetAddConnection3 .

Per altre informazioni sull'uso di un gestore errori definito dall'applicazione, vedere Recupero di errori di rete.