2011-12-29 62 views
2

我可以使用GetRawInputDeviceList成功查詢我的系統,以獲取原始設備列表和GetRawInputDeviceInfo以獲取單個設備的詳細信息。如何在VC++中獲取設備顯示名稱?

但是,當查詢名稱時,GetRawInputDeviceInfo返回「設備路徑」。我想獲得的是「顯示名稱」作爲展現在

設備管理器 - >鼠標和其他指針設備 - >(鼠標設備) - >屬性 - >詳細信息 - >顯示名稱

如何這可能嗎?

TIA

回答

3

貌似 「RIDI_DEVICENAME」 是在註冊表中的路徑。因此,我可以使用它來執行註冊表查找並從'DeviceDesc'鍵中獲取最後一個被限制的元素。

謝謝 - 我希望可以幫助別人。

1
UINT WINAPI GetRawInputDeviceInfo(
    __in_opt  HANDLE hDevice, 
    __in   UINT uiCommand, 
    __inout_opt LPVOID pData, 
    __inout  PUINT pcbSize 
); 

你嘗試,uiCommand = RIDI_DEVICENAME

GetRawInputDeviceInfo參考:http://msdn.microsoft.com/en-us/library/windows/desktop/ms645597(v=VS.85).aspx

+2

謝謝你的迴應。請看我的問題:我能夠使用GetRawInputDeviceInfo來收集名稱(使用RIDI_DEVICENAME) - 返回某種系統名稱,如下所示:「\\?\ ACPI#AUI1500#4&27fd7cf0&1#{378de44c-56ef-11d1-bc8c -00a0c91405dd}」。看着設備管理器,這個名字實際上是「設備路徑」。我在尋找的是「設備名稱」,它應該帶有「阿爾卑斯指示設備(2路)」 – ChronoFish