Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\BackupRestore\AsrKeysNotToRestore]
"Plug & Play"=hex(7):43,00,75,00,72,00,72,00,65,00,6e,00,74,00,43,00,6f,00,6e,\
  00,74,00,72,00,6f,00,6c,00,53,00,65,00,74,00,5c,00,43,00,6f,00,6e,00,74,00,\
  72,00,6f,00,6c,00,5c,00,43,00,72,00,69,00,74,00,69,00,63,00,61,00,6c,00,44,\
  00,65,00,76,00,69,00,63,00,65,00,44,00,61,00,74,00,61,00,62,00,61,00,73,00,\
  65,00,5c,00,00,00,00,00熟悉的朋友一看就知道,是导出注册表,值类型是:REG_EXPAND_SZ
我现在能得到键位信息及值信息,也能将键值转换输出。
不过,有两个问题一直不能解决1:那个7是怎么来的?
2:如何确定那个'\'的位置,简单点,就是如何像系统导出的那样排版?

解决方案 »

  1.   

    应该是标识类型的
    #define REG_EXPAND_SZ               ( 2 )   // Unicode nul terminated string                                            // (with environment variable references)
    #define REG_MULTI_SZ                ( 7 )   // Multiple Unicode strings第一行确定输出的个数
    应该是使用公式
    (行宽度(80)- 键名到:的长度) / 3,如果得到的结果小于0输出一个字符
    然后其他每行输出25个字符,最后一行有多少输出多少就可以了
      

  2.   

    五个星星的就是牛人,我自己分析过,不过,我现在不能确定那个是不是标识类型的,有时候那个数字不是7是3或其它的,怎么解释。
    行数字的确定,我用UltraEdit 16进制模式看过,也就是80-X,不过,也除过,不过就差一点,回支后试试,成功则结贴,否则再等。