• JavaScript调用C++


    方案一:

    // html & JavaScript

    ...

    <button value="Click me" onclick="window.navigate('app:command&arg1=1&arg2=2')" />

    ...

     // C++: 响应 的消息函数OnBeforeNavigat2 

    virtual void OnBeforeNavigate2( LPCTSTR lpszURL, DWORD nFlags, LPCTSTR lpszTargetFrameName, 

    CByteArray& baPostedData, LPCTSTR lpszHeaders, BOOL* pbCancel );

    // C++ code goes here

    Code
    方案二:

    // html & javaScript

    ...

    function CallCpp()

    {

    alert('start to call cpp here');

    window.external.JavaScriptCallCpp('This is a test for call C++ in JavaScript');

    }

    <button onclick="CallCpp()" >JavaScript访问C++代码</button>

    ...

    // C++ code goes here

    CString javaScriptName = _T("JavaScriptCallCpp");

    #define DISPID_CallCppFromJs 1

    // 实现IDispatch 接口

    Code
    // 改写COleControlSit
    Code
    // 修改App
    Code
  • 相关阅读:
    编译原理 实例
    lex yacc flex bison
    图解tensorflow 源码分析
    PostgreSQL 179个场景 案例集锦
    github view source
    Java 微服务实践
    Linux kernel AIO
    Lex与Yacc学习
    OpenResty 通过 Lua 扩展 NGINX 实现的可伸缩的 Web 平台
    nginx Architecture
  • 原文地址:https://www.cnblogs.com/dlbrant/p/1392430.html
Copyright © 2020-2023  润新知