PC 내에서 고유한 ID 정보를 가져 오는 방법중 하나를 들라면 보통 LAN 카드의 MAC 주소나 HDD 의 제조사 모델 정보와 고유 제조번호를 선택 할 수 있습니다. LAN 카드나 HDD 는 교체가 쉽게 가능하나, OS 를 설치 해야 하는 조건을 생각하면 오히려 HDD 가 좀 더 unique 한 정보를 만들수 있어 보이길래 만든 유틸리티 소스 입니다.

     MinGW 에서도 빌드 될수 있도록 만든 것이라 NTDDDISK.H 가 없어도 되도록 만들었습니다만, 조건이 컴파일시 (또는 프로젝트 매니저에) -DNO_NTDDDISK_H 를 지정해야 합니다.

     해당 소스는 완전 공개이며, Code::Blocks 프로젝트로 만들어진 예제까지 포함 입니다. 경우에 따라서는 VisualStudio 에서 수정해서 쓰시는데 지장이 없을 겁니다만, 이 소스를 수정해서 쓰시는것에 대해 제가 대응을 해 드리거나 하지 않습니다.


    파일은 아래 링크를 통해 받아 주시기 바랍니다.


    HDDserial_20131126.zip


    hddutil.h 헤더를 참조 하면 다음 2개의 API 를 사용가능 합니다.


    std::string GetPrimaryHDDSerial();
    std::string GetHDDVolumeSerial( const char* refpath = NULL );
    


     적절한 예는 압축 파일 내에 있는 main.cpp 파일을 참조 해 주시기 바랍니다.

    저작자 표시 비영리 변경 금지
    신고
    Posted by 견족자K rageworx

    • 2017.03.01 02:58

      비밀댓글입니다

      • Favicon of http://rageworx.tistory.com BlogIcon 견족자K rageworx
        2017.03.01 22:44 신고

        안녕하세요,
        Windows10 부터는 여러 이유로 storage 정보를 BIOS 로 부터 받아 오는 방법 말고는 더이상 동작 하지 않게 되었습니다.
        BIOS 는 SMBIOS 관련 Windows API 로 얻어 오실수 있으나, 제조사 마다 다른 구조로 어려움이 좀 있는 편 입니다.
        나중에 소스가 적당히 공개 해도 될 만한 수준이 되면 BitBucket 이나 GitHub 에 올려 보도록 하겠습니다.