以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]想问下如何读取这种注册表的值呢  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=143110)

--  作者:81538475
--  发布时间:2019/11/13 19:35:00
--  [求助]想问下如何读取这种注册表的值呢


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20191113193313.jpg
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/11/13 19:35:24编辑过]

--  作者:有点蓝
--  发布时间:2019/11/14 9:14:00
--  
参考:http://www.foxtable.com/webhelp/topics/2051.htm
--  作者:81538475
--  发布时间:2019/11/14 9:32:00
--  
Dim Val() As Byte = Registry.GetValue("HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Enum\\DISPLAY\\DELA0FD\\4&2c9fd97a&0&UID198171\\Device Parameters","EDID",0)
For I As Integer = 0 To Val.COUNT -1

Output.Show(val(i))
Next

输出结果
0
255
255
255
255
255
255
0
16
172
253
160
66
75
48
50
18
28
1
3。
我用这个方式读取出来,但是显示的数字跟注册表的不同。
这个应该是十进制。如何将十进制转换成 acsii 呢
[此贴子已经被作者于2019/11/14 9:38:17编辑过]

--  作者:81538475
--  发布时间:2019/11/14 10:20:00
--  
有一些进展
Dim Val() As Byte = Registry.GetValue("HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Enum\\DISPLAY\\DELA0FD\\4&2c9fd97a&0&UID198171\\Device Parameters","EDID",0)
Dim sj As String
For i1 As Integer = 95 To 106

 sj +=hex(VAL(I1))

Next

Output.Show(sj)
Dim sj1 As String
Dim i As Long
sj1 = ""

For i = 1 To Len(sj) Step 2
    sj1 = sj1 & Chr(Val("&H" & Mid(sj, i, 2)))
Next
Output.Show(SJ1)
sj 得到的值是对的。44454C4C2053503233313848
但是转码的结果出错了。
但是如果把  把sj  直接定义  dim sj as string = “44454C4C2053503233313848”
输出结果又是对的。
麻烦帮忙指点一下

--  作者:81538475
--  发布时间:2019/11/14 10:24:00
--  
解决了。饶了一大圈
Dim Val() As Byte = Registry.GetValue("HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Enum\\DISPLAY\\DELA0FD\\4&2c9fd97a&0&UID198171\\Device Parameters","EDID",0)
Dim sj As String
For i1 As Integer = 95 To 106

 sj +=chr(VAL(I1))

Next