我怎样才能唯一识别一个显示器?

我正在尝试编写一个程序,在显示器失去连接的情况下重新configuration显示器,并且Windows无法正确地重新configuration其之前的设置。

通常,如果拔下显示器,Windows似乎会跟踪显示器的configuration设置。 例如,我现在连接了三台显示器。 如果我拔下我的“主显示器”,Windows将使剩下的两台显示器之一成为主显示器。 然后,如果我重新连接显示器,Windows通常会记住该显示器的configuration,特别是在这种情况下,它是我的主显示器,并将其适当地设置。

我目前使用EnumDisplayDevicesEnumDisplaySettingsChangeDisplaySettingsEx设置每个监视器(分辨率,方向等)的configuration。 但是,查看哪些EnumDisplayDevicesEnumDisplaySettings信息填充了DISPLAY_DEVICEDEVMODE结构,似乎没有什么能够唯一地识别监视器本身。 我将得到唯一标识当前configuration的每个显示的值(例如,\。\ DISPLAY1和\。\ DISPLAY2 \。\ DISPLAY3),但是如果我拔下具有标识符\。\ DISPLAY1,下一次运行我会得到值\。\ DISPLAY1和\。\ DISPLAY2。 所以这个价值不能用来在以后不确定一个特定的监视器。

是否有一些关于每个监视器的独特信息,我可以用它来识别它们? 我觉得这样一个信息可能存在的事实是,大多数情况下,如果我拔下显示器并重新插入,Windows将保留其configuration。