I tried to get VCP features from my monitor, I can get the values from my monitor with some test tools or C++ code. But if the VCP code contains sub-code, I get failed. I get the capability string of my monitor:
Capabilities String:
(prot(monitor)type(lcd)model(HP Z24m G3)cmds(01 02 03 07 0C E3 F3)vcp(02 04 05 08 0B 0C 10 12 16 18 1A 2E(00 01 02 03) 52 60(0F 11 13) 62 6C 6E 70 86(01 02 05) 87(01 02 03 04 05 06 07) 8D(01 02) AC AE B2 B6 C0 C6 C8 C9 CA(01 02) CC(01 02 03 04 05 06 09 0A 0D 0E 14) D6(01 02 03 04 05) DC(00( 00 01 02 05 13 14 15 1D 2B)02(00 01 02 03 04) ) DF E0(02(00 01 03)) E1(04(00 01 03 04 06 08 09 0A) 0A(00 01) 0C(20) 0F(00 01) 10(00 01) 27(02 03 04 05 07 09 0A FF) 28(00 01) 2C(00 01) 2D(00 01) 30(00 01) 31(00 01) 32(00 01) 35(00 01 02) 36(00 01) 39(02 03) 3B 3C 3E 3F(02 03 04 05) 40(00 01 02 03) 42(00 01) 43(00 01) 45(00 01) 49(00 01) 4A(00 01) 4C( 00 01 ) 4E(00 01 02 03 04 05 FF) 56 57(00 01) 6E(01) 6F(00) 72(00 01) 73(00 01)) E6(00 01) E7(00 01) E8(18(00 01) 1B( 00 01 02) 1C(00 01) 1E( 00 01 02)) E9(0D(00 01)) EA(00 01) EB(00( 01 02 03 04)) EE(01 02 03) EF(01 02 03 04 05) F0 F5(00 01 02 03 05 06 0A 0B 0C 0D 0E 0F 11 12 13 14 15 18 19 1B 1C 1D 1E) F8(00 01 02(00 01 02) 0A) FA(00 01 02) FB FC FD FE(00 01 02 03 04))mswhql(1)asset_eep(40)mccs_ver(2.2))
I wanna get the VCP code "E1" ,which contains sub-code "35(00 01 02)".
And here is the VCP menu of my monitor.
"E1" is used by several functions and I just want to get the "displayport mode".
I had tried some test tools and C++ function "GetVCPFeatureAndVCPFeatureReply" but all return zero. I'll be appreciated if there is someone help me. Thanks!
I finally finish it. use SetVCPFeature to set the value 0xB5 to select the function then use GetVCPFeature to get 0xE1