2013-04-21 1 views
0

IP 주소, 서브넷 마스크 및 기본 게이트웨이를 변경하는 데이 코드를 사용하고 있지만 기본 게이트웨이 만 변경되고 IP 주소와 서브넷 마스크는 변경되지 않습니다. 저를 도와주세요? 난 당신이 관리자로 실행해야 할 권리의 종류를 마우스 오른쪽 빈에서 EXE 파일을 클릭하고 IP 주소를 변경하면 관리자 권한이 필요하기 때문에 관리자 권한으로 실행하고 Windows 7에서 윈도우 7이 코드를 사용하여 IP 주소를 변경하는 방법은 무엇입니까?

Dim IPAddress As String = "192.168.2.130" 
Dim SubnetMask As String = "255.0.0.0" 
Dim Gateway As String = "192.168.2.1" 
Dim objMC As ManagementClass = New ManagementClass("Win32_NetworkAdapterConfiguration") 
Dim objMOC As ManagementObjectCollection = objMC.GetInstances() 

For Each objMO As ManagementObject In objMOC 
    If (Not CBool(objMO("IPEnabled"))) Then 
     Continue For 
    End If 

    Try 
     Dim objNewIP As ManagementBaseObject = Nothing 
     Dim objSetIP As ManagementBaseObject = Nothing 
     Dim objNewGate As ManagementBaseObject = Nothing 
     objNewIP = objMO.GetMethodParameters("EnableStatic") 
     objNewGate = objMO.GetMethodParameters("SetGateways") 

     'Set DefaultGateway 
     objNewGate("DefaultIPGateway") = New String() {Gateway} 
     objNewGate("GatewayCostMetric") = New Integer() {1} 

     'Set IPAddress and Subnet Mask 
     objNewIP("IPAddress") = New String() {IPAddress} 
     objNewIP("SubnetMask") = New String() {SubnetMask} 
     objSetIP = objMO.InvokeMethod("EnableStatic", objNewIP, Nothing) 
     objSetIP = objMO.InvokeMethod("SetGateways", objNewGate, Nothing) 

     MessageBox.Show("Updated IPAddress, SubnetMask and Default Gateway!") 
    Catch ex As Exception 
     MessageBox.Show("Unable to Set IP : " & ex.Message) 
    End Try 
Next objMO 

답변

1

을 사용하고 있습니다 .

+0

댓글이 더 좋을 것입니다. 만약 당신이 그것을 대답하고 싶다면 ** 더 나은 ** 대답이 될 것입니다. 관리자로서 exe를 실행하면 문제가 해결 될 것이라고 설명했습니다. – Tim

+0

감사합니다. @Tim. 나는 내 ipad를 사용하여 대답하고 있으므로 문자를 적게 쓸 수 있다는 것을 의미한다. 그리고 귀하의 요청에 따라 답변을 편집 중입니다. 다시 한번 감사합니다. – Edper

+0

문제 없습니다. 답변을 편집하고 추가해 주셔서 감사합니다. 나는 항상 물건의 이유를 알고 싶어하는 그 사람 중 하나입니다 ... 나는 어렸을 때 부모님 견과를 몰고 갔다는 것을 확신합니다 :) OP 이외의 다른 누군가가 미래에이 답을 필요로 할 수도 있습니다. 더 자세한 정보가 거의 항상 도움이됩니다. – Tim