您的位置:

js调用c+代码,C++ js

js调用c+代码,C++ js

更新:

本文目录一览:

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

脚本执行的基础是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;

}

如何在IOS平台上使用js直接调用OC方法

在Cocos2d-JS v3.0 RC2中,与Android上js调用Java一样,Cocos2d-JS也提供了在iOS和Mac上js直接调用Objective-C的方法,示例代码如下:

1 var ojb = jsb.reflection.callStaticMethod(className, methodNmae, arg1, arg2, .....);

在 jsb.reflection.callStaticMethod 方法中,我们通过传入OC的类名,方法名,参数就可以直接调用OC的静态方法,并且可以获得OC方法的返回值。

•参数中的类名,只需要传入OC中的类名即可,与Java不同,类名并不需要路径。比如你在工程底下新建一个类 NativeOcClass ,只要你将他引入工程,那么他的类名就是 NativeOcClass ,你并不需要传入它的路径。

1 import Foundation/Foundation.h @interface NativeOcClass : NSObject +( BOOL )callNativeUIWithTitle:(NSString *) title andContent:(NSString *)content; @end

方法

•js到OC的反射仅支持OC中类的静态方法。

•方法名比较要需要注意,我们需要传入完整的方法名,特别是当某个方法带有参数的时候,你需要将他的:也带上。根据上面的例子。此时的方法名字是callNativeUIWithTitle:andContent:,不要漏掉了他们之间的:。

•如果是没有参数的函数,那么他就不需要:,如下代码,他的方法名是 callNativeWithReturnString ,由于没有参数,他不需要:,跟OC的method写法一致。

1 +(NSString *)callNativeWithReturnString;

使用示例

•下面的示例代码将调用上面 NativeOcClass 的方法,在js层我们只需要这样调用:

1234 var ret = jsb.reflection.callStaticMethod( "NativeOcClass" , "callNativeUIWithTitle:andContent:" , "cocos2d-js" , "Yes! you call a Native UI from Reflection" );

•这里是这个方法在OC的实现,可以看到是弹出一个native的对话框。并把 title 和 content 设置成你传入的参数,并返回一个boolean类型的返回值。

123 +( BOOL )callNativeUIWithTitle:(NSString *) title andContent:(NSString *)content{ UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:title message:content delegate:self cancelButtonTitle:@ "Cancel" otherButtonTitles:@ "OK" , nil]; [alertView show]; return true ; }

•此时,你就可以在 ret 中接受到从OC传回的返回值(true)了。

注意

在OC的实现中,如果方法的参数需要使用float、int、bool的,请使用如下类型进行转换:

•float,int 请使用NSNumber类型

•bool请使用BOOL类型。

•例如下面代码,我们传入2个浮点数,然后计算他们的合并返回,我们使用NSNumber而不是int、float去作为参数类型。

1 +( float ) addTwoNumber:(NSNumber *)num1 and:(NSNumber *)num2{ float result = [num1 floatValue]+[num2 floatValue]; return result;}

•目前参数和返回值支持 int, float, bool, string,其余的类型暂时不支持。

js如何调用c语言写的api

包含api的.h文件,然后直接调用就可以了,比如winsock.h,可以调用recv等函数,也可以在函数前面加::

答案补充

HWND hWnd = ::FindWindow(sClassName, sWindowName);//传入类明到sClassName,窗口名sWindowName,否则传入NULL

java调用js代码,java调用js代码 实例

本文目录一览: 1、如何在java中调用js方法 2、如何通过java代码调用js 3、java中怎么调用js代码 4、如何在java调用js 5、请问怎么写java调用node环境运行js代码? 如

2023-12-08
js高级程序设计笔记14(js高级程序设计笔记14页)

本文目录一览: 1、JavaScript高级程序设计 该怎么看 2、JavaScript学习笔记之数组基本操作示例 3、JS中有关sort以及return的问题 JavaScript高级程序设计 该怎

2023-12-08
htmljs编程笔记(html代码笔记)

本文目录一览: 1、html代码和JS代码有什么区别 2、如何在html中调用js函数 3、JavaScript学习笔记之数组基本操作示例 4、HTML5初学者笔记 5、《web前端笔记7》js字符—

2023-12-08
js调用c+代码,C++ js

本文目录一览: 1、如何实现 js 和 c++ 的互相调用 2、如何在IOS平台上使用js直接调用OC方法 3、js如何调用c语言写的api 如何实现 js 和 c++ 的互相调用 脚本执行的基础是W

2023-12-08
js与java调用,java 调用 js

2022-11-24
js代码整洁随笔,js代码整理

本文目录一览: 1、如何在页面让JavaScript代码原样显示,用标签不起用,js照常运行。请看问题补充 2、怎么让JS文件代码对齐 3、怎么样格式化javascript,怎么样格式化js 4、为什

2023-12-08
测试js对c函数的调用,c语言调用js

本文目录一览: 1、js如何调用c语言写的api 2、JS函数如何调用别的函数变量。 3、如何在js函数中调用另外一个函数 4、js 函数如何去调用另一个函数中的函数? js如何调用c语言写的api

2023-12-08
js调用c怎么调(js调用c语言接口)

本文目录一览: 1、JavaScript-js和c语言可以相互调用吗 2、如何在 iOS 平台上使用 Javascript 直接调用 Objective-C 方法 3、js中方法调用疑问 4、js里怎

2023-12-08
java调用js,java调用js方法

2023-01-07
js代码总结体会,js基础知识总结笔记

本文目录一览: 1、js到底难不难学? 2、JS 代码 求解释 可以详细的 说明一下 谢谢 3、浅谈js写轮播图的思路与心得 4、JavaScript与WEB前台开发课程实训总结怎么写 5、js中继承

2023-12-08
java调用js,java调用js脚本

2022-11-28
javascript简要笔记,JavaScript读书笔记

2022-11-17
js代码中script,js代码中的问号是什么意思

本文目录一览: 1、javascript中script的SRC属性 2、JS代码里加载script代码,并隐藏其内容怎么弄呢? 3、使用javascript必须使script标签吗 javascrip

2023-12-08
js调用android原生代码,js调用Android

本文目录一览: 1、Android AgentWeb Android和Js交互 2、JS怎样调用Android本地原生方法 3、原生APP中js怎样与Android和ios进行交互 4、JS 调用an

2023-12-08
java里可以调用js里的参数吗,js调用java方法

本文目录一览: 1、java 调用 js函数 2、java怎么调用javascript 3、如何在java中调用js方法 4、java如何调用js里的变量 java 调用 js函数 function是

2023-12-08
java调用js,java调用json接口

2023-01-09
网站js调用代码(网站js调用代码是什么)

本文目录一览: 1、调用JS代码怎么写 2、如何在html中调用js代码 3、求助:HTML点击按钮调用JS文件或者直接调用JS代码? 调用JS代码怎么写 1、建立JS文件。把原本JS代码除SCRIP

2023-12-08
java调用js脚本语言(java调用js代码 实例)

本文目录一览: 1、java程序中运行js脚本 2、如何在java中调用js方法 3、java怎么调用javascript java程序中运行js脚本 我们要在Java中执行JavaScriptMet

2023-12-08
javascript一句话笔记,javascript基本语句

2022-11-16
js调用java,js调用java类中的方法

2022-11-30