如何实现 js 和 c++ 的互相调用

 我来答
折柳成萌
高粉答主

2017-09-17 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:4.4万
采纳率:96%
帮助的人:6191万
展开全部
脚本执行的基础是WEB控件,
那么C++在WINDOWS下运行可以装入WEB控件实现脚本调用。
下面是一段引用某位博主的代码可以参考一下。
// vcJscript.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#import "C:/windows/system32/msscript.ocx" // msscript.ocx
using namespace MSScriptControl;
#include <fstream>
#include <string>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
HRESULT hr = CoInitialize(NULL); //使用一个变量初始化COM设置,单线程运行
IScriptControlPtr pScriptControl(__uuidof(ScriptControl)); //初始化脚本控件
pScriptControl->Language = "JavaScript"; //设置语言
pScriptControl->AllowUI = TRUE;//设置显示
fstream file;//文件流用于读出JS代码
file.open( "test.js" );
string strFileContent, strTemp;
char szTemp[1024]="";

do
{
file.read(szTemp, 1024);
strFileContent.append( szTemp );//拼接JS文件
memset( szTemp, 0, 1024 );
}
while ( !file.fail() );
file.close();
pScriptControl->AddCode(strFileContent.c_str());//向控件加入代码
VARIANT A = pScriptControl->Eval("main(4);"); //获取返回值
int iRet = A.intVal;
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式