我有一个存储十六进制数据的字符串(\ xEA \ x ...)。无论如何使用vbs运行该代码?也许做某种类型的转换到函数指针或类似的东西。
我正在尝试做的C版本将是:
unsigned char opcode[] = "\xc0\x...."
main()
{
int (*run)() = (int(*)())opcode;
run();
}
非常感谢你。
答案 0 :(得分:0)
您可以将函数指针(或函数引用)与GetRef函数一起使用:
dim fp : set fp = GetRef("ShowMessage")
call fp("Woosh")
function ShowMessage(msg)
msgbox msg
end function
为了使任何字符串具有通常非法字符的函数命名(如十六进制数据中的反斜杠),您可以在函数声明中使用括号:
dim fp : set fp = GetRef("99 problems")
call fp()
' note: functions normally cannot start with a digit or contain spaces
function [99 problems]()
msgbox "but this aint one"
end function
您不能使用的唯一字符是结束括号:]