Не получается вызвать из плюса, tiscript'овую функцию. Для простоты, в качестве плюсового кода использовал исходники сэмпла 'minimal' из Sciter SDK. Модифицировал их следующим образом:
// LPCBYTE pb = 0;
// UINT cb = 0;
// GetResource(L"default.html",pb,cb);
// assert( pb && cb );
// SciterLoadHtml(hwnd, pb,cb, NULL );
SciterLoadFile(hwnd, L"sample.htm");
std::string functionName("foo");
tiscript::VM* vm = SciterGetVM(hwnd);
tiscript::pinned func(vm);
tiscript::value ns = tiscript::get_global_ns(vm);
func = tiscript::get_prop(vm, ns, functionName.c_str());
if( !tiscript::is_function(func) ) {
return NULL;
}
Код непосредственно вызывающий функцию не привожу, т.к. до него дело не доходит. Т.е. is_function возвращает false. Вот sample.htm:
<html>
<script type="text/tiscript">
function foo() {
view.msgbox(#info, "foo called");
}
</script>
</html>