Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    netsh

    buongiorno a tutti, ho la necessità, tramite un piccolo programmino di switchare automaticamente la configurazione della scheda di rete, una con dhcp e l'altra con indirizzo statico che prendo da un file di testo del tipo:
    pc1;192.168.1.100
    pc2;192.168.1.101
    ecc..
    ho creato questo programmino (il mio primo programma in vb net quindi scusatemi per ogni eventuale sbaglio). L'ho creato con VB.Net 2010 Express sotto windows 7 e funziona perfettamente. Lo stesso programma sotto windows xp sp3 con .net framework 4 funziona ma male, nel senso che per attivare la configurazione sulla scheda di rete devo cliccare più volte sui button del programma.
    il pezzo di codice che riguarda questa funzione è:

    codice:
    Imports System.Net
    Imports System.IO
    
    
    Public Class Form1
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    
            Dim comandoip = "netsh interface ip set address ""Connessione alla rete locale (LAN)"" dhcp"
            Shell(comandoip, vbHide)
    
            Dim comandodns = "netsh interface ip set dns ""Connessione alla rete locale (LAN)"" dhcp"
            Shell(comandodns, vbHide)
            Label2.Hide()
            Label3.Hide()
            Label1.Show()
    
        End Sub
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            
        End Sub
    
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    
    
            Dim hostName As String = System.Net.Dns.GetHostName()
    
            Dim lettura As String = ""
            Dim f As New IO.StreamReader("indirizzi.txt")
            ' peek ritorna il prossimo carattere dello stream. se -1 sono alla fine
    
            While f.Peek <> -1
                lettura = f.ReadLine
                If lettura.Contains(hostName) Then
                    Dim lunghezzaHost As Integer = Len(hostName)
                    Dim recuperaIP As String = lettura.Substring(lunghezzaHost + 1)
                    Dim comandoip = "netsh interface ip set address ""Connessione alla rete locale (LAN)"" static " & recuperaIP & " " & "255.255.255.0 10.49.28.253 1"
                    Shell(comandoip, vbHide)
                    Label3.Text = "Identificato con indirizzo IP: " & recuperaIP
                End If
            End While
    
            f.Close()
    
            Dim comandodns = "netsh interface ip add dns ""Connessione alla rete locale (LAN)"" 212.216.112.112"
            Shell(comandodns, vbHide)
    
            Dim comandodns2 = "netsh interface ip add dns ""Connessione alla rete locale (LAN)"" 10.49.28.246 index=2"
            Shell(comandodns2, vbHide)
    
            Label1.Hide()
            Label3.Show()
            Label2.Show()
    
        End Sub
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            Me.Close()
        End Sub
    End Class
    qualcuno potrebbe aiutarmi? grazie in anticipo

  2. #2

    Moderazione

    Benvenuto sul forum! Ti ricordo che il linguaggio di riferimento (e relativa versione) va sempre specificato (anche nel titolo, sotto forma di "tag").

    Ora correggo io, in futuro imposta correttamente la discussione fin da subito; nel frattempo ti consiglio di dare un'occhiata al regolamento.
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.