Используйте Synaptics Touchpad Scroll в VMware Guest

17

Я хотел бы использовать Synaptics "Прокрутка двумя пальцами" внутри гостя VMware.

На хосте он работает, как и ожидалось, но VMware, похоже, не поддерживает его. Курсор мыши изменится, чтобы указать, что прокрутка активна, но гость VMware не будет отвечать на нее.

  • VMware Workstation 7.1
  • Хост и Гостевая ОС: Windows 7 (64bit)
  • Драйвер Synaptics 15.0.9.0
  • Устройство отображается как «Synaptics LuxPad V7.4»

Можно ли как-то заставить эту работу работать? (например, измените .vmx, измените параметры Synaptics или с драйвером, который имитирует «прокрутку колесика мыши»)

Обновление: я уже пробовал несколько опций в драйвере Synaptics, но единственное изменение состояло в том, что он отображал другой курсор мыши при попытке прокрутки.

laktak
источник
проверьте мое решение @ superuser.com/a/439474/106787
mreq
@hcris Подумайте о проверке моего ответа, пожалуйста :-)
Андрей Забавников

Ответы:

22

Итак, я провел исследование и смог добиться успеха.

Подумав, я пришел к выводу, что не знаю, как это работает :-) Просто так! :-)

Ранее в « Полезном :) Веселье »:

Короче говоря, тачпад Synaptics отправляет ( SendMessage()или PostMessage()не удосужился точно определить) сообщения правого окна ( WM_MOUSEWHEEL) в окно VMware, но на самом деле он должен использовать SendInput()прямую эмуляцию физической мыши. Кажется, что была возможность контролировать поведение драйверов (или, точнее, программы пользовательского режима SynTPEnh.exe) с помощью файла tp4table.dat. К сожалению, эта опция почему-то не включена в моих драйверах (хотя в исполняемом файле есть такая строка).

Итак, я сделал следующее - просто ввел a .dllв процесс окна VMware (я надеюсь, что это безопасно, а также надеюсь, что это не тот же процесс, который выполняет VM), подклассовую процедуру окна (имеется в виду перехваченные сообщения окна) и перевел «неправильные», используя SendInput(),

Также было отмечено, что следующее исправление стоит применить даже с моим решением: http://blog.alexou.net/2010/07/scrolling-in-gtk-apps-with-synaptics-driver/ .

Итак, исходный код и исполняемые файлы (они только поддерживают Workstation, подробнее об Player, читайте в «ОБНОВЛЕНИЕ») - спросите в комментарии, если вы что-то не нашли - на https://www.dropbox.com/s/ gucmyo35heha6g2 / vmware_scroll.zip? dl = 0 .

ОСНОВНОЕ ЗАМЕЧАНИЕ: запустите соответствующий исполняемый файл, когда виртуальная машина работает.

ДРУГОЕ ОСНОВНОЕ ЗАМЕЧАНИЕ: не двигайтесь, hook.dllи *.exeэто после того, как прокрутка была включена. Если вы начнете vmware_scroll_stop.exeс другого места, оно не будет выгружено .dll(т.е. отключите прокрутку).

ОБНОВЛЕНИЕ : есть улучшенная версия (она была улучшена Энтони Приером, большое ему спасибо!), Которая также поддерживает VMware Player. Также доступна программа, производная от VMWareTrackPadScroller, с простым пользовательским интерфейсом.

ПРИМЕЧАНИЕ. К сожалению, не будет версии с горизонтальной прокруткой. Дело в том, что есть идея решения, но я отверг ее как слишком грязную. Чтобы выполнить задачу, нужно подключить (в SynTPEnh.exe) API GetClassNameW () для изменения имен классов окон VMware (это «VMware.GuestWindow» и «MKSEmbedded») или wcsicmp (), чтобы всегда возвращать «не равно» когда один из аргументов является одной из упомянутых строк. Я думаю, что это грязное решение с точки зрения производительности, по крайней мере (это на самом деле слабый аргумент, поскольку снижение производительности будет минимальным). В любом случае, я думаю, что текущее решение является приемлемым, поскольку у вас не всегда есть устройство с возможностью горизонтальной прокрутки, и лучше привыкнуть жить без этой роскоши, чем страдать в нищете. КСТАТИ,Shift+Vertical Scroll сделать горизонтальную прокрутку.

Андрей Забавников
источник
2
Только что обновил!
Андрей Забавников
3
это заслуживает одобрения!
xiamx
@xiamx Это работает для вас? Я только что получил отзыв, что он не работает для игрока (может быть, небольшая модификация не требуется). Может быть, это вопрос также применения этого исправления blog.alexou.net/2010/07/…
Андрей Забавников
да, это работает отлично. И это также работает для других устройств ввода с пользовательскими драйверами (logitech T650). Хотя я перекомпилировал его сам, так как у меня только v110 toolset. Можете ли вы положить его на GitHub? так что те, кому нужно, чтобы он работал с Player, могли сами его модифицировать
xiamx
@ xiamx Хорошо, я сделаю это через несколько дней. Просто не удосужился разобраться с GitHub при работе над версией, которая будет поддерживать горизонтальную прокрутку.
Андрей Забавников
7

Многие люди жаловались на эту проблему, и запросы о возможностях были отправлены в Synaptics.

Я нашел один отчет об успехе здесь . Хотя это для Ubuntu, похоже, что есть решение этой проблемы.

Я предлагаю вам попробовать решения, изложенные в статье ниже, для хоста и гостя:
устранение проблем с прокруткой Firefox с помощью сенсорной панели Dell Synaptics

В статье упоминаются два исправления:

  1. Удалить параметр круговой прокрутки из свойств мыши
  2. Замените драйверы сенсорной панели Dell на драйверы Synaptics

Как говорится в статье для второго:

Вы можете удалить драйверы сенсорной панели Dell и установить универсальные драйверы Synaptics, которые лучше работают для многих людей, но в них отсутствуют некоторые дополнительные функции Dell. Пока ваш тачпад делает то, что вы ожидаете, это может стоить того.

Я предлагаю создать точку восстановления системы перед сменой драйверов, на всякий случай.
Вы также всегда можете откатить драйвер из диспетчера устройств.

EDIT1

Некоторые люди сообщают об успехе при использовании драйвера ALPS, а не Synaptics.
Как говорит Alps Touchpad Driver для Windows 7 :

некоторые ноутбуки Dell не имеют сенсорных панелей производства Synaptics. У них есть сенсорные панели Альп. Если вы не уверены в том, какой у вас тачпад, ознакомьтесь с этой статьей об определении правильной модели.

Когда я помог моему пользователю обновить его Inspiron 1420 до Windows 7, я использовал драйвер для Vista. Вот ссылка на скачивание. Этот драйвер только для 32 бит. Если это не работает для вас, вы также можете попробовать драйвер для Windows 7. Вот ссылка . Вторая ссылка предоставляет как 32-битные, так и 64-битные драйверы.

EDIT2

Следующая ветка содержит некоторую интересную информацию:
Проблемы с тачпадом Synaptics, не способным прокрутить гостевую ОС (Windows XP)

Последняя запись в теме говорит:

У меня есть несколько коллег, которые хотели бы использовать Vmware на ноутбуках в целях поддержки. Некоторые пробуют Sun Virtualbox, а другие пробуют Vmware. Прокрутка отлично работает с Virtualbox, но приверженность SUN к этому типу продуктов в прошлом сгорела.

Кажется, что VMware просто не заботится о Synaptics, и ваше устройство не очень хорошо поддерживается им. Хотя это не дает прямого ответа на ваш вопрос, я думаю, что вам нужно будет перейти на Virtualbox, чтобы тачпад работал.

Чтобы подсластить таблетку, см. Как конвертировать VMware в Virtualbox .

harrymc
источник
У меня уже есть драйвер Synaptics (см. Выше). Эта статья предназначена для прокрутки одним пальцем (которая также не работает, и отключение Circular / Chiral не имеет никакого эффекта), но я был бы рад, если бы я мог использовать любой из этих вариантов. Настройки Ubuntu звучат многообещающе, но как их применить в Windows?
Лактак
@chris: В большинстве сообщений, которые я обнаружил, говорится, что VMware просто не поддерживает Synaptics Touchpad как устройство, поэтому то, что вы просите, невозможно. В любом случае, я отредактировал выше еще один подход, который работал для некоторых людей. Если это не работает, вы также можете попробовать использовать другой продукт VM, кроме VMware.
Harrymc
@harrymc Я уверен, что это устройство Synaptics, но я не могу найти его на pcidatabase.com. Идентификаторы HW: «ACPI \ DLL02EF» и «* DLL02EF».
Лактак
Хорошо, может быть, я прошу невозможного, но это раздражало меня долгое время. Я надеялся, что есть способ заставить это работать так же, как работает колесико мыши (возможно, с эмуляцией). В любом случае, если решения не будет, я начисляю вам очки за всю вашу помощь!
Лактак
@chris: Вам нечего терять, вы пробовали драйвер ALPS? См. Также этот драйвер drivercure.com/driver/… и support.dell.com/support/downloads/…
harrymc
3

Это решение кажется хорошим.

http://code.google.com/p/two-finger-scroll/

Я проверил это, и он дает множество возможностей для настройки 1,2,3 цифры касания и прокрутки.

Деба Саха
источник
Благодарю. Я надеюсь, что это поможет кому-то еще, поскольку я перешел на MacBook с VMware Fusion, где все работает «из коробки» (и у него также есть лучший трекпад).
Лактак
Пока это самое быстрое решение для меня. Установил и все работает!
Эран Медан
1

Прокрутка Synaptics двумя пальцами работает в режиме Unity от VMware (Player> Unity). Я использую это для запуска VS2013 в VMware Player с Windows 7 x64 в качестве хоста и гостевой ОС.

user2361830
источник