請問大神
公司有一台MSI的AIO(AE202)之前是裝 Win7H,最近轉成 Win10H,發現原本的ideacom 光學式觸控在 Win10 不支援,爬一下文,發現原廠也沒出新的Win10驅動。
不過發現,滑鼠指標在螢幕會亂跳,於是把觸控螢幕的裝置停用,發現有改善,但是偶而螢幕還是會亂跳,於是試著 [解除安裝裝置] 發現好像有作用。目前遇到的問題主要是如果是解除安裝裝置,重新開機後,裝置管理員好像會自己掃描硬體將他又安裝回去,
請問有何方法或指令,開機時針對觸控螢幕裝置執行 [解除安裝裝置]?
查了一下 裝置的 VID/PID 0408/3008, 0408 是廣達,沒有3008的PID
查到好像是鴻發積體電路(ideacom)公司2002年就倒了,看起來不可能更新Win10的驅動
這些大廠用這些裝置孤兒,會影響他們的品牌信譽吧!
測試一: [結論:無效]
更新:[測試滑鼠在 USB3.0 port]
測試二:
測試 re.Zero 大大作法中:從 Registry TouchGate關閉觸控:0 = 停用觸控, 1 = 啟用觸控
*測試三: 因為測試二的結果,懷疑是 滑鼠在 USB3.0 的問題?
依測試二條件 加入以下取消[增強指標的準確性]進行測試
狀況一: 保留硬體裝置,安裝滑鼠USB3.0 port,取消[增強指標的準確性][mouse acceleration]。
(測試5小時OK)指標未抖動。[有效]
*測試四:
狀況一 :Registry TouchGate 設定 1,啟用觸控,滑鼠取消[增強指標的準確性]
測試 30 分鐘,滑鼠指標抖動。
*結論: 經四個測式,解決觸控螢幕滑鼠指標抖動問題,須以下兩個設定
方法二:
看起來不是 PS/2 控制的裝置
Update:
補充:針對「開機時針對觸控螢幕裝置執行 [解除安裝裝置]」,我查詢並思考了一下,有可行方法;只是,很麻煩且針對 PnP 裝置就是了。(有 Powershell 概念的人能自行研究變種方式。)
雖說你用不到了~但我還是補充一下,給個參考方向,看以後是否有人有需要。
但,我只說明 Powershell 一開始環境確認與執行測試的部分;
剩下的例如:
我就不說了,畢竟發問者用不到,我也嫌麻煩~
以下,用「具管理員權限的 Powershell 」進行以下操作:
## 列出 名稱符合 "*Keyboard*" 的 PnP 裝置;依 HardwareID 排序;
$myTgNa = "*Keyboard*"
Get-PnpDevice |? { $_.Name -like $myTgNa } |Sort-Object -Property HardwareID
## 檢查第三個( Index := 2 )裝置的資訊,以確認是想要的目標裝置;(這裡我挑第三個);
$myIndex = 2
(Get-PnpDevice |? { $_.Name -like $myTgNa } |Sort-Object -Property HardwareID)[$myIndex] |Format-List
## 將目標裝置 "HardwareID" 部分字串(","之前,不需"{") 作為識別碼,並確認是否是唯一的該裝置;(P.s.: $myTgHId 內容是範例,被我修改過;)
$myTgHId = "HID\VID_0FFA&PID_9FF0&REV_0FF8&MI_00&Col01"
Get-PnpDevice |? { $_.HardwareID -like $myTgHId } |Format-List
## 將目標裝置的 InstanceId 丟給 "pnputil.exe" 執行以移除該裝置。
Get-PnpDevice |? { $_.HardwareID -like $myTgHId } |%{&"pnputil.exe" /remove-device $_.InstanceId}
## P.s. 執行[ &"pnputil.exe" /scan-devices ]命令、在裝置管理員掃描硬體變更、或 Windows 自動掃描等動作,都會造成該裝置再度被安裝回來;
以上,補充完畢。 (後續為 Update 前內容~)
我不知 Windows 有無方法或指令,在開機時針對特定裝置執行 [解除安裝裝置]。
(這我感覺倒是 Linux 辦的到;只是麻煩~)
但關於輸入裝置的停用,除了 停用裝置 外,我這裡再提供兩個方法給你試試:
(以下是 Win-Cmd 的命令。)
■ Method 1: 從 Registry 關閉觸控:
HKEY_CURRENT_USER\Software\Microsoft\Wisp\Touch
內有無 TouchGate
reg query "HKEY_CURRENT_USER\Software\Microsoft\Wisp\Touch" /v "TouchGate"
TouchGate
於 HKEY_CURRENT_USER\Software\Microsoft\Wisp\Touch
內。/d="0x0"
中,0x0 = 停用觸控, 0x1 = 啟用觸控)reg add "HKEY_CURRENT_USER\Software\Microsoft\Wisp\Touch" /v "TouchGate" /t "REG_DWORD" /d "0x0" /f
P.s. 恢復方式:
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Wisp\Touch" /v "TouchGate" /f
/d="0x1"
中,0x0 = 停用觸控, 0x1 = 啟用觸控)reg add "HKEY_CURRENT_USER\Software\Microsoft\Wisp\Touch" /v "TouchGate" /t "REG_DWORD" /d "0x1" /f
■ Method 2: 關閉控制 PS/2 的服務(i8042prt):
此方式只適用於在 PS/2 控制的裝置。
(可在「裝置管理員」,從裝置「內容」的「一般」頁面內確認裝置連接「位置」。)
(此方式會導致所有 PS/2 控制的裝置失能;請先確認是否有其他裝置被 PS/2 控制。)
sc query i8042prt
sc config i8042prt start=disabled
P.s. 恢復方式:
sc config i8042prt start=enable
停用只是暫時停用,隨時可以再啟用
解除安裝裝置是連驅動程式都從你的電腦裡連根拔除(除非你的系統太古老)
但你的系統會自動尋找網上或更新的驅動,重開又回來了,最好的方法就是停用
我的經驗是,Win10強迫安裝Win7的驅動程式,需留意版本(x86 & x64)
很多老設備(可能動輒幾百、幾千萬)的驅動程式停留在Win XP/7,只能利用此方法解決