2년차때 만들었던, WMI를 사용한 네트워크 관리
사용목적은 로컬/서버로 모두 전송하는 기능이 있는데, 야구장에서 네트워크가 너무 느린 관계로 응답속도때문에 대기 시간이 너무 길었다.
이에 로컬/서버만 따로 관리할 수 있도록 설정한 기능
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Runtime.InteropServices; using System.Management; namespace Solution_Network { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private Boolean GetNetConnectionStatus() { return SystemInformation.Network; } //Win32_NetworkAdapter 사용 네트워크 제어 private void btnEnabled_Click(object sender, EventArgs e) { ManagementClass wmiClass = new ManagementClass("Win32_NetworkAdapter"); //Where NetEnabled=True" ManagementObjectCollection wmiObecjtCollection = wmiClass.GetInstances(); foreach (ManagementObject mo in wmiObecjtCollection) { if(mo["NetEnabled"] != null) { MessageBox.Show(((Boolean)mo["NetEnabled"]).ToString()); ManagementBaseObject enable = mo.InvokeMethod("enable", null, null); //ManagementBaseObject Disable = mo.InvokeMethod("Disable", null, null); } } } } } | cs |
구현 후 배치파일로 만들어서 솔루션에서 이벤트 시, 실행
'C#' 카테고리의 다른 글
08# 키보드 후킹 (0) | 2016.05.11 |
---|---|
07# C# Entity framework (0) | 2016.05.11 |
05# 소켓 비동기식 처리 (0) | 2016.04.18 |
04# 속성(Property) 객체 생성 시 초기화 (0) | 2016.04.18 |
03# 외부 dll 타입제어(dev express) (0) | 2016.04.18 |