1
有誰知道是否存在包含WMI IPHelper函數的等價物的現有C#.NET名稱空間?具體而言,我需要調用CreateIpForwardEntry和DeleteIpForwardEntry。通過P/Invoke是唯一的方法嗎? (注意:這不是對第三方庫的請求,而是對於標準.NET庫的請求)任何使用WMI IPHelper的標準C#.NET方法?
有誰知道是否存在包含WMI IPHelper函數的等價物的現有C#.NET名稱空間?具體而言,我需要調用CreateIpForwardEntry和DeleteIpForwardEntry。通過P/Invoke是唯一的方法嗎? (注意:這不是對第三方庫的請求,而是對於標準.NET庫的請求)任何使用WMI IPHelper的標準C#.NET方法?
最後,我決定不打擾嘗試P/Invoke WMI IPHelper函數。啓動一個打開cmd.exe的進程並編寫控制檯命令來添加和刪除路由會更容易。下面的代碼說明了如何做到這一點。
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "cmd.exe",
UseShellExecute = false,
RedirectStandardOutput = true,
RedirectStandardInput = true,
CreateNoWindow = true
}
};
proc.Start();
proc.StandardInput.WriteLine(delete
? "route delete " + ServiceIpAddress + " mask " + GatewayMask + " " + GatewayIpAddress + " -p" : "route add " + ServiceIpAddress + " mask " + GatewayMask + " " + GatewayIpAddress + " -p");
roc.Close();
這不是一個請求「推薦或找到工具,庫或最喜歡的場外資源」。我認爲這很清楚。我想知道如何從.NET調用CreateIpForwardEntry。爲什麼這是脫離主題的SO? – ProfNimrod
我同意這是_not_ off主題。 –
感謝支持傑森。當我第一次發佈這個問題時,這個問題就被擱置了。在重新說明明確表示我不在尋找第三方圖書館的建議後,修改後的問題被投票重新開放。一旦成功重新開放,我不認爲SO應該允許再次擱置一個問題。 – ProfNimrod