Обнаружение ноутбука в док-станции или отстыкованной Windows 7+

У меня есть ноутбук, работающий под управлением Windows 7, но в конечном итоге он может перейти на Windows 10. Я хотел бы иметь свою собственную утилиту, которая определяет, когда ноутбук подключен или отсоединен, а затем изменяет настройки профиля питания. Я уже настроил его на то, что я хочу, когда он питается от батареи по сравнению с переменным током в стандартных профилях питания Windows, но мне нужен другой план питания, когда ноутбук находится на док-станции, чем когда он просто подключен к адаптеру переменного тока и не на док-станции.

До сих пор у меня есть рабочая программа, которая запускается с небольшим значком в системном трее, и она будет вносить необходимые изменения, когда она установлена ​​или отключена, НО путь Я определяю, что ноутбук подключен к поиску конкретных жёстко имя монитора, которое я подключил к моей док-станции (например, «Samsung U32D970Q») через вызовы EnumDisplayDevices каждый раз, когда происходит WM_DEVICECHANGE.

Основная проблема — если я когда-нибудь поменяю монитор, то программа перестанет работать. я мог при запуске передать в программу параметр с именем монитора для поиска, но я пытаюсь выяснить, есть ли лучший способ. Я так глуп, делаю это так?

Есть ли какая-нибудь функция Windows 7+, где ОС может сказать, что ноутбук находится на док-станции или нет?

2

Решение

Я столкнулся с подобной проблемой, пытаясь определить, подключен ли мой ноутбук. Моя конечная цель — подключить блок питания ноутбука от док-станции к интеллектуальному разъему и использовать Google Home Assistant для включения / выключения ноутбука с помощью голосовых команд. Чтобы включить ноутбук, когда питание переменного тока вернется, вам нужно включить «Wake On AC» в BIOS. Проблема в том, что при отключении переменного тока ноутбук все еще будет работать от батареи. Мне нужен был способ для фоновой задачи правильно завершить работу Windows при соблюдении следующих условий:

1) Электропитание ноутбука изменилось с переменного тока на постоянный

2) Ноутбук пристыкован к док-станции

Вышеуказанные условия гарантируют, что ноутбук не выключится, когда я просто отсоединяюсь. Я обнаружил, что дополнительные устройства присутствуют в диспетчере устройств, когда ноутбук подключен. Мое решение состоит в том, чтобы перечислять все устройства, когда они подключены / отстыкованы, и сохранять результаты в два текстовых файла и сравнивать их, используя windiff, чтобы увидеть различия. Просто используйте одно или два различия «дополнительного устройства», чтобы определить, подключен ли ноутбук.

При настройке моего ноутбука DELL + док-станции устройства «HID-Complaint *» всегда присутствуют в док-станции и отсутствуют при отсоединении. Я пытался использовать CM_Is_Dock_Station_Present и GetCurrentHwProfile, но оба никогда не сообщают правильно статус док-станции.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]