在winapi中运行javascript
我有一个非常简单的js文件:在winapi中运行javascript,javascript,winapi,Javascript,Winapi,我有一个非常简单的js文件: function geoip_country_code() { return 'US'; } function geoip_country_name() { return 'United States'; } function geoip_city() { return 'New York'; } function geoip_region() { return '06'; } function geoip_region_name()
function geoip_country_code() { return 'US'; }
function geoip_country_name() { return 'United States'; }
function geoip_city() { return 'New York'; }
function geoip_region() { return '06'; }
function geoip_region_name() { return 'xxx'; }
function geoip_latitude() { return '55'; }
function geoip_longitude() { return '99'; }
function geoip_postal_code() { return ''; }
function geoip_area_code() { return ''; }
function geoip_metro_code() { return ''; }
我想从win32代码调用
geoip\u country\u code
。甚至有可能吗?如果您不想处理比这更复杂的代码,我建议您改用正则表达式,只解析出您想要返回的值。否则,你需要提供你写这篇文章的语言信息。据我所知,Win32 API不支持JS(尽管COM可能支持),但有几种不同语言的API可以运行JS
如果您想使用regex,那么应该这样做:
function [a-zA-Z_]+\(\) { +return +'([a-zA-Z0-9 ]+)'; +}
如果您不想处理比这更复杂的代码,我建议您改用正则表达式,只解析出您想要返回的值。否则,你需要提供你写这篇文章的语言信息。据我所知,Win32 API不支持JS(尽管COM可能支持),但有几种不同语言的API可以运行JS 如果您想使用regex,那么应该这样做:
function [a-zA-Z_]+\(\) { +return +'([a-zA-Z0-9 ]+)'; +}
您尚未指定语言,但这在COM中是可能的
MSScriptControl.ScriptControl
sc->language="jscript";
sc->addcode("the js string");
result = sc->run("geoip_country_code", args);
您尚未指定语言,但这在COM中是可能的
MSScriptControl.ScriptControl
sc->language="jscript";
sc->addcode("the js string");
result = sc->run("geoip_country_code", args);
尽管获取
MSScriptControl.ScriptControl的文档并不容易,但我成功地使用了一种非常类似的方法-sc->run(“geoip\u country\u code”,noArgs)代码>感谢您指出了正确的方向,您也可以将答案更改为使用run
方法,这样我就可以接受它了。(如果你不愿意,我还是会编辑并接受它)尽管获取MSScriptControl.ScriptControl
的文档并不容易,但我成功地使用了一种非常类似的方法-sc->run(“geoip\u country\u code”,noArgs)代码>感谢您指出了正确的方向,您也可以将答案更改为使用run
方法,这样我就可以接受它了。(如果您不愿意,我将编辑它并接受它)