NumGet
返回指定 地址+偏移 位置存储的二进制数值.
Number := NumGet(VarOrAddress [, Offset = 0][, Type = "UPtr"])
参数
- VarOrAddress (变量或地址)
-
内存地址或变量. 如果VarOrAddress是一个类似
MyVar
的变量且它的值不是纯数字或对象, 则相当于传递&MyVar
, 然而省略 "&" 可以执行的更好并确保目标地址+偏移是有效的.不要传递一个变量引用, 如果这个变量包含目标地址时; 在这种情况下, 传递一个类似
MyVar+0
的表达式. - Offset (偏移)
偏移(单位为字节), 添加到 VarOrAddress 以确定目标地址.
- Type (类型)
-
下列字符串的其中一个(省略时默认为 UPtr):
UInt, Int, Int64, Short, UShort, Char, UChar, Double, Float, Ptr 或 UPtr与 DllCall 不同的是, 作为原义字符串使用时必须括在引号中.
更多细节请参阅 DllCall 类型.
返回值
如果目标地址无效,则返回空字符串.然而, 某些无效地址这里无法检测出来并可能导致不可预知的行为.
其他情况下返回指定地址+偏移的数字.
一般说明
如果只使用了两个参数, 则第二个参数可以为 Offset 或 Type. 例如, NumGet(var, "int")
是合法的.