我正在尝试使用NSIS创建安装程序,并且有一个用于检查硬件要求的自定义页面。目前,我正在使用HwInfo plug-in,但问题是GetVideoCardName函数只返回1个图形卡名称,即使桌面有多张图形卡。
如何使用NSIS获取所有已安装的图形卡名称?
更新
我使用WMI header获取所有图形卡名称。
如果有人有更好的选择,请告诉我。
答案 0 :(得分:0)
您可能需要编写自己的自定义插件或修改HwInfo插件。
如果您正在安装游戏,您可能需要查看DirectDrawEnumerateEx和类似功能,或者可能需要EnumDisplayDevices来查看GDI级别的设备。
答案 1 :(得分:0)
除了Anders回答:我也这么认为 - 调整HwInfo插件并不是那么困难。你需要做什么?
GetVideoCardName()
(在NSISFunctions.cpp
中)调用GetVideoAdapterDescription()
中的HardwareInfo.cpp
方法。由于每个人都受益,所以值得贡献(我在过去为nsis做出了贡献)。