我想了解所有正在使用的程序以及正在使用的该软件的版本。我不需要知道确切的版本号(尽管它会很好),只需说两件事是不同的版本(或构建)。
因为我对每个程序一无所知,所以我需要以通用方式完成此操作。怎么可能做到这一点?
我想了解所有正在使用的程序以及正在使用的该软件的版本。我不需要知道确切的版本号(尽管它会很好),只需说两件事是不同的版本(或构建)。
因为我对每个程序一无所知,所以我需要以通用方式完成此操作。怎么可能做到这一点?
这是一个很笼统的问题,所以我会给你一个笼统的答案。您将需要执行以下操作:
EnumProcesses()
。OpenProcess()
获取一个进程句柄。GetModuleFileNameEx()
来获取进程的主可执行文件名。GetFileVersionInfo()
,也许它的一些朋友来检索信息。这将为您提供二进制版本信息而不是营销版本。例如,Windows XP 是 5.1 版,Windows Vista 是 6.0,Windows 7 是 6.1 版。如果您需要营销版本,那么这可能无法以一般方式实现。