我是一家网络公司的实习工程师,我不时会不得不改变IP信息。
我需要构建一个软件来帮助我轻松更改这些细节。我设法设置了IP信息。但我还是有问题。
代码很长,我希望不要满足于此。但我一直在使用管理
我更愿意制作自己的程序来培养我的编程技巧。但如果有申请,我不介意知道。
答案 0 :(得分:1)
我希望这个答案会给你一些明确的指示和方向。
好的,网络适配器不是 直接,但我相信你可以用WMI实现它,特别是这个WMI object here。 MSDN文档告诉您所有属性,方法(用于设置DHCP等)以及它所采用的数据类型和值。这可能是一种方法,因为通过C#使用WMI非常简单。我希望我能为你提供一个例子,但我以前从未使用过那个特定的WMI类。您还可以通过Visual Studio Server Explorer访问上述WMI类,您可以在此处查看。 ..它有你可能正在寻找的“EnableDHCP”方法。
至于要求你的程序运行管理权限,这里是我框架中的安装项目的代码。这样做是在它运行任何形式或逻辑之前,请求调用UAC的“runas”动词(如果Windows有其Vista / 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网络连接管理器?我知道它很麻烦,因为所有的对话框,但它已经存在了。
答案 1 :(得分:0)
我曾经写过一个非常类似的程序。我使用了这两个项目的一些源代码来帮助我开始使用:Chameleon Project和Configuring TCP/IP Settings using WMI and C#
变色龙项目是一个C#项目,可帮助更改特定适配器的网络设置。另一个项目是关于如何使用C#来使用WMI和C#更改网络设置的教程。您可以查看源代码并从中学习,以帮助您制作自己的软件,满足您的需求。