Q&A

  • 드라이브명 가져오는 법 좀....
컴퓨터 내의 모든 드라이브명을 가져오는 방법은 없을까요?

1  COMMENTS
  • Profile
    안재현 1999.11.19 21:40
    장일형 wrote:

    > 컴퓨터 내의 모든 드라이브명을 가져오는 방법은 없을까요?



    이건 제가 다른 데서 얻은 자룝니다.



    현재 자신의 컴퓨터에 있는 logical drive가 어떤게 있는 지 알아내고

    각 drive 의 타입을 알아내는 방법입니다.

    간단히 테스트 용으로 두개의 listbox를 사용했습니다.

    하나는 drive 목록을 보여주기 위한 것이고 하나는 타입을 함께

    보여주기 위한 것입니다.



    var

    ptr : PChar;

    iptr : PChar;

    dwSize : integer;

    str : string;

    i, type : Integer;

    begin

    dwsize := GetLogicalDriveStrings(0, Nil);

    //위 문장을 실행하면 dwsize에 전체 logical drive를 나열한 스트링의

    //총 길이가 나옵니다.



    GetMem(ptr, dwsize);

    //PChar 변수인 ptr에 메모리를 할당합니다.

    GetLogicalDriveStrings(dwsize, ptr);



    //할당된 메모리에 logical drive의 스트링을 가져옵니다.

    //정확한 건 아니지만 제 생각으로는 넘어오는 스트링의 형식은 다음과 같습니다.

    // 'a:c:d:w:'

    //드라이명 뒤에 붙는