Q&A

  • 현재 사용중인 OS 이름 알아내기
환경 : 델파이 6.0

안녕하세요...
질문인즉 제목그대로 OS 이름 알아내는겁니다.
OS 버젼 알아내는건 팁에 있는데 이름알아내는건 없네요..
지가 원하는결과는 OS 가 Windows 95, Windows 98, Windows XP, Windows 2000 등등 이런 이름을 가지고 오고 싶은데..잘 안되네요..
아시는 분은 리플 부탁드립니다..
그럼 항상 즐코하시고 더위 먹지 않게 조심들 하셔욤....^^;;
2  COMMENTS
  • Profile
    이윤오 2003.05.14 20:01
    저는 델파이 7.0을 쓰고 있는데요...
    자료실에 가보면 API에 관한 자료가 있음다..
    그거 참고하고 웹에서 찾은 자료임다..
    도움이 되었으면 하네요....
    이건 제가 테스트해본건데 ... 틀린부분있으면 답변 주세요 ...
    그럼...

    procedure TForm1.Button3Click(Sender: TObject);
    var
      MyVerInfo: TOSVersionInfo;    // holds version information
    begin
      {set the size member of the TOSVersionInfo structure}
      MyVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);

      {retrieve the operating system version information}
      GetVersionEx(MyVerInfo);
      {display the operating system version information}
      Panel1.Caption := IntToStr(MyVerInfo.dwMajorVersion);
      Panel2.Caption := IntToStr(MyVerInfo.dwMinorVersion);
      Panel3.Caption := IntToStr(MyVerInfo.dwBuildNumber);
      case MyVerInfo.dwPlatformId of
        VER_PLATFORM_WIN32s:        Panel4.Caption := 'Win 32s under Windows 3.1';
        VER_PLATFORM_WIN32_WINDOWS: Panel4.Caption := 'Windows 95';
        VER_PLATFORM_WIN32_NT:      Panel4.Caption := 'Windows NT';
      end;

      {
      Win XP
        -  dwPlatformId = VER_PLATFORM_WIN32_NT and
           dwMajorVersion = 5 and
           dwMinorVersion = 1

      .Net Server
        -  dwPlatformId = VER_PLATFORM_WIN32_NT and
           dwMajorVersion = 5 and
           dwMinorVersion = 2

      win 2000
        -  dwPlatformId = VER_PLATFORM_WIN32_NT and
           dwMajorVersion = 5

      Win Me
        -  dwPlatformId = VER_PLATFORM_WIN32_WINDOWS and
           dwMajorVersion = 4 and
           dwMinorVersion = 90

      Win 98
        -  dwPlatformId = VER_PLATFORM_WIN32_WINDOWS and
           dwMajorVersion = 4 and
           dwMinorVersion = 10

      Win 95
        -  dwPlatformId = VER_PLATFORM_WIN32_WINDOWS and
           dwMinorVersion = 0

      Win NT
        -  dwPlatformId = VER_PLATFORM_WIN32_NT and
           dwMajorVersion <= 4
      }

    end;

  • Profile
    이희정 2003.05.13 03:20
    API 함수중에 GetVersion 이런 게 있답니다.

    help 보시면

    o distinguish between operating system platforms, use the high order bit and the low order byte, as shown in the following table:

    Platform        High order bit        Low order byte (major version number)
    Windows NT        zero        3 or 4
    Windows 95        1         4
    Win32s with Windows 3.1        1        3


    For Windows NT and Win32s, the remaining bits in the high order word specify the build number.
    For Windows 95 the remaining bits of the high order word are reserved.

    이런 설명이 있거든요.

    이런 함수는 원하시는 건가요?