0

私は非常に単純な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()  { 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 ''; }

geoip_country_codewin32コードから呼び出したいのですが。それも可能ですか?

4

2 に答える 2

2

言語を指定していませんが、これはCOMで可能です。MSScriptControl.ScriptControl

sc->language="jscript";
sc->addcode("the js string");

result = sc->run("geoip_country_code", args);

http://support.microsoft.com/kb/229669

于 2012-10-18T10:44:34.267 に答える
1

これよりも複雑なコードを処理しない場合は、代わりに正規表現を使用して、返される値を解析することをお勧めします。それ以外の場合は、これを記述している言語に関する情報を提供する必要があります。Win32APIは、私が知る限りJSをサポートしていません(COMはサポートしている可能性があります)が、JSを実行できるさまざまな言語のAPIがいくつかあります。

あなたが正規表現に行きたいなら、これはそれをするべきです:

function [a-zA-Z_]+\(\) { +return +'([a-zA-Z0-9 ]+)'; +}
于 2012-10-18T10:40:25.643 に答える