2011-03-09 5 views
2

사용중인 모든 프로그램의 개요와 사용중인 소프트웨어의 버전을 확인하고 싶습니다. 정확한 버전 번호를 알 필요는 없지만 두 가지가 별개의 버전 (또는 빌드)이라고 말할 수 있어야합니다.Windows : 실행중인 프로세스의 버전 확인

각 프로그램에 대해 알지 못하기 때문에이를 일반적인 방법으로 수행해야합니다. 어떻게이 일을 할 수 있겠습니까?

답변

5

이것은 매우 일반적인 질문이므로 일반적인 대답을 드리겠습니다. 다음을 수행해야합니다.

  • EnumProcesses()을 호출하여 모든 프로세스를 열거합니다.
  • 각 프로세스 ID에 대해 OpenProcess()을 사용하여 프로세스 핸들을 얻습니다.
  • 각 프로세스 핸들은 GetModuleFileNameEx()을 호출하여 프로세스의 주요 실행 파일 이름을 얻습니다.
  • 마지막으로 GetFileVersionInfo()과 일부 친구를 호출하여 정보를 검색하십시오.

이것은 마케팅 버전이 아닌 바이너리 버전 정보를 제공합니다. 예를 들어, Windows XP는 버전 5.1이고, Windows Vista는 6.0이고, Windows 7은 버전 6.1입니다. 마케팅 버전이 필요한 경우 일반적으로 일반적인 방식으로는 달성 할 수 없습니다.

관련 문제