爱问知识人 爱问教育 医院库

VB中汉字字符串转成16进制编码

首页

VB中汉字字符串转成16进制编码

VB中如何实现汉字转成编码,是16进制的哦 
比如说,
我是中国人, 转一下变成了, &H12494BC4
我是用来做外挂喊话的,,因为游戏CALL 需要压入一个参数,,而这个参数正是我们所要说的内容呢,,他是一个16进制数,,

提交回答

全部答案

    2018-05-01 14:03:51
  •   “他是一个16进制数”
    这个可能有点问题
    参数的类型应该没有分什么进制的,16进制只是查看程序显示比较方便罢了
    直接把Ansi压入就可以了
    也就是直接压入Strconv("我是中国人",vbFromUnicode)
    如果说程序发送的真的是十六进制字符串的话
    那么~最节约的方法:
    dim a() as byte
    dim b as string
    b="&H"
    a=Strconv("我是中国人",vbFromUnicode)
    for i = lbound(a) to ubound(a)
    b=b & hex(a(i))
    next
    print b
    =====================================================
    我是中国人, 转一下变成了, &H12494BC4
    这个表述应该也有问题
    每个汉字有两个字节组成 表示为 &HXXXX
    也就是说“我是中国人”这五个字表示为16进制应该有&HXXXXXXXXXXXXXXXXXXXX
    这么长
    如果是不遵守Unicode的话,倒是有可能用lz所用的长度表示
    =====================================================
    地址的话要压入 ByVal StrPtr(b)
    b是定义的字符串型变量,一定要是ByVal哦
    =====================================================
    把汉字字符串“新年好啊”转换下存入内存&H00054AE2
    这个~首先要确保这个地址分配了足够长的空间
    然后用Copymemory
    把字符串数据Copy过去
    b="新年好啊"
    CopyMemory Byval &H00054AE2,Byval ByVal StrPtr(b),lenb(b)
    =====================================================
    如果是对其他程序的内存作修改的话要先取得访问内存的权限
    网络上有游戏修改器的源代码,应该可以参考
    动态分配内存空间可以用GlobalAlloc这个API
    -----------------------------------------------------
    VB的话~弄不好的话IDE可能会崩溃的
    所以……最好在每次运行前都保存。
      

    y***

    2018-05-01 14:03:51

类似问题

换一换
  • 程序设计 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新资料 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):