PDA

View Full Version : Visual C++ & Gateway


MSciglio
07-06-2002, 20:44
Salve a tutti.

Sapete se c'e' un modo di cambiare l'indirizzo di gateway della macchina "al volo" (senza riavviare il pc o disconnettersi e riconnettersi) utilizzando Visual C++?

Grazie,
Maurizio

cionci
08-06-2002, 02:44
Originariamente inviato da MSciglio
[B]Sapete se c'e' un modo di cambiare l'indirizzo di gateway della macchina "al volo" (senza riavviare il pc o disconnettersi e riconnettersi) utilizzando Visual C++?

Qualsiasi cosa che si fa con il mouse in Windows si può fare con le API...non c'è niente (anche se ci sono alcune eccezioni) che non è permesso...

Ad esempio ho trovato questa API :

DWORD
APIENTRY
GetInterfaceConfigInfo(
IN DWORD dwIndex,
IN OUT PVOID pvConfig,
IN OUT PDWORD pdwSize
)
/*++
Routine Description
Called by the IP Router Manager to retrieve an
interface's configuration. Usually this is because an admin
utility is displaying this information. The Router Manager calls
us with a NULL config and ZERO size. We return the required size
to it. It then allocates the needed memory and calls us a second
time with a valid buffer. We validate parameters each time and
copy out our config if we can

Arguments
dwIndex Index of the interface being queried
pvConfig Pointer to buffer to store the config
pdwSize Size of the buffer

Return Value
ERROR_INSUFFICIENT_BUFFER If the size of the buffer is too small
ERROR_INVALID_PARAMETER
ERROR_INVALID_DATA
NO_ERROR

Purtroppo la maggior parte delle API di questo genere non sono documentate...

MSciglio
08-06-2002, 19:43
Intanto grazie per la risposta....

In pratica io ho l'esigenza di isolare un PC connesso in LAN da Internet. La connessione a Internet avviene fisicamente tramite un router per cui gli altri pc avranno settato come indirizzo di gateway quello del router. Per questo avevo pensato alla modifica dell'indirizzo di gateway. Secondo voi funziona così o ancora meglio... vi vengono in mente altri metodi per ottenere il medesimo risultato? Ovviamente il tutto dovrà essere fatto tramite un programmino.

E' molto importante...

Grazie

MSciglio
10-06-2002, 18:55
Nessuno ha idea a riguardo?

cionci
11-06-2002, 12:23
Le API sono probabilmente quelle che ti ho scritto...
GetInterfaceConfigInfo e SetInterfaceConfigInfo (per settare i parametri)...

Ma le strutture utilizzate in queste funzioni non sembrano essere documentate...