카테고리 없음

golang으로 Windows Registry에 등록된 NetCfgInstanceId를 얻는 방법

sh0seo 2020. 11. 29. 02:33

Windows Registry에 등록된 NetCfgInstanceId를 획득하는 방법을 구현해 본다. 
Windows는 Registry에 디바이스 정보를 등록할 때, 미리 정해진 GUID 값에 맞게 등록이 된다.

 

  • CDROM: 4D36E965-E325–11CE-BFC1–08002BE10318
  • Keyboard: 4D36E96B-E325–11CE-BFC1–08002BE10318
  • Modem: 4D36E96D-E325–11CE-BFC1–08002BE10318
  • Mouse: 4D36E96F-E325–11CE-BFC1–08002BE10318
  • Net: 4D36E972-E325–11CE-BFC1–08002BE10318

이 중에서 Net 클래스의 GUID 값을 Key로 사용한다.

SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325–11CE-BFC1–08002BE10318}

GUID 값을 기준으로 Windows Registry를 확인해보면 아래와 같이 등록된 모든 Net에 대한 정보를 확인할 수 있다. 
여기에는 물리 하드웨어뿐만 아니라 virtualbox와 같은 가상 머신에서 설치된 드라이버까지 모두 보인다.

이제 golang 코드를 이용해서 해당 값을 얻어본다.