2011-07-01 7 views
0

나는 네트워킹 회사에서 연수생으로 일하고 있으며 때때로 IP 정보를 변경해야하므로 짜증이납니다.Windows 네트워크 정보 조작

이러한 세부 정보를 쉽게 변경할 수 있도록 소프트웨어를 작성해야합니다. IP 정보를 설정할 수있었습니다. 그러나 나는 아직도 문제가있다.

  1. 관리자 권한으로 프로그램을 실행해야합니다. [시작]에서 프로그램을 시작할 때 프로그램 할 수있는 방법이 있습니까?
  2. 어떻게 어댑터를 DHCP로 변경할 수 있습니까?

코드가 너무 길어서 채워주지 않기를 바랍니다. 하지만 내 개발 관리를

  • 관리 클래스
  • 관리 자료 객체
  • 관리 개체 컬렉션을 사용하고있다.

프로그래밍 기술을 익히기 위해 내 프로그램을 만드는 것을 선호합니다. 그러나 그것을 할 응용 프로그램이 있다면, 나는 알지도 모르겠다.

답변

1

나는이 대답이 당신에게 어떤 불만과 방향을 제시하기를 희망한다.

네트워크 어댑터 하나가 이 아니며입니다.하지만 WMI로 구현할 수 있다고 생각합니다. 특히 WMI object here입니다. MSDN 설명서는 모든 속성, 메서드 (DHCP 등을 설정하는 방법) 및 데이터 형식과 값을 알려줍니다. 이것은 C#을 통한 WMI 사용이 매우 쉽기 때문에 한 가지 방법 일 수 있습니다. 나는 당신에게 예제를 제공해 줄 수 있었으면 좋겠다.하지만 전에는 그 특정 WMI 클래스를 사용한 적이 없다. 여기에서 볼 수있는 Visual Studio 서버 탐색기를 통해 위의 WMI 클래스에 액세스 할 수도 있습니다. .. 그리고 그것은 아마도 당신이 찾고있는 "EnableDHCP"방법을 가지고 있습니다.

enter image description here

는 지금까지 관리의 권한으로 실행하는 프로그램을 요청하는 등, 여기에 내 프레임 워크 내 설치 프로젝트에서 코드입니다. 이것이 않는 것은 형식이나 논리의 모든 종류를 실행하기 전에,이다 UAC를 호출하는 "RUNAS"동사를 요청 (윈도우 비스타/7을 가지고 있으며, 사용자에서 관리자의 권한을 요청하면) 지금까지와 같은

namespace Setup { 
    using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Windows.Forms; 
    using Setup.Forms; 
    using System.Security.Principal; 
    using System.Diagnostics; 

    static class Program { 
     /// <summary> 
     /// The main entry point for the application. 
     /// </summary> 
     [STAThread] 
     static void Main() { 
      Application.EnableVisualStyles(); 
      Application.SetCompatibleTextRenderingDefault(false); 

      WindowsPrincipal principal = new WindowsPrincipal(WindowsIdentity.GetCurrent()); 
      bool administrativeMode = principal.IsInRole(WindowsBuiltInRole.Administrator); 

      if (!administrativeMode) { 
       ProcessStartInfo startInfo = new ProcessStartInfo(); 
       startInfo.Verb = "runas"; 
       startInfo.FileName = Application.ExecutablePath; 
       try { 
        Process.Start(startInfo); 
       } 
       catch { 
        return; 
       } 
       return; 
      } 

      Application.Run(new ShellForm()); 
     } 
    } 
} 

을 그것을 할 프로그램, Windows 네트워크 연결 관리자? 나는 모든 대화 때문에 그것의 성가신 것을 안다. 그러나 .. 이미 그것.

+2

직접 코드를 작성하는 대신 응용 프로그램 매니페스트에서 올바르게 설정하는 것이 가장 좋습니다. http://stackoverflow.com/questions/5276674/how-to-force- a-wpf-application-to-run-in-administrator-mode/5276770 # 5276770 – vcsjones

0

나는 한때 아주 비슷한 프로그램을 작성해야했습니다. 이 두 프로젝트의 소스 코드 중 일부를 시작하려면 다음을 사용하십시오. Chameleon ProjectConfiguring TCP/IP Settings using WMI and C#

Chameleon Project는 특정 어댑터의 네트워크 설정을 변경하는 데 도움이되는 C# 프로젝트입니다. 다른 프로젝트는 C#을 사용하여 WMI 및 C#을 사용하여 네트워크 설정을 변경하는 방법에 대한 자습서입니다. 소스 코드를보고 필요한 정보를 얻을 수있는 자신 만의 소프트웨어를 만들 수 있습니다.

관련 문제