#include "comutil.h"
using namespace MSScriptControl;
#include <MsHTML.h>
#include <fstream> CString CHXXCDlg::Encrypt(CString stringData) {
//m_WebBrowser是一个WebBrowser的Activex控件对象。
HRESULT hr = CoInitialize(NULL);
IScriptControlPtr pScriptControl(__uuidof(ScriptControl));
pScriptControl->Language = "JavaScript";
//pScriptControl->AllowUI = TRUE;
fstream file;
file.open("FunToJS.js");
string strFileContent, strTemp;
char szTemp[] = ""; do
{
file.read(szTemp, );
strFileContent.append(szTemp);
memset(szTemp, , );
} while (!file.fail());
file.close();
pScriptControl->AddCode(strFileContent.c_str()); string stringFun("FunToJS('");
string stringOp = stringFun+ (LPCSTR)(CStringA)(stringData) + "','" + (LPCSTR)(CStringA)(m_strJSBaseKey) + "');"; _bstr_t bstr;
bstr = (_bstr_t)stringOp.c_str();
VARIANT variant_str = pScriptControl->Eval(bstr);
string strEncryped = (const char*)_bstr_t(variant_str); CString cstrEncryped(strEncryped.c_str()); Decrypt(cstrEncryped);
return cstrEncryped;
}; CString CHXXCDlg::Decrypt(CString stringData) {
//m_WebBrowser是一个WebBrowser的Activex控件对象。
HRESULT hr = CoInitialize(NULL);
IScriptControlPtr pScriptControl(__uuidof(ScriptControl));
pScriptControl->Language = "JavaScript";
//pScriptControl->AllowUI = TRUE;
fstream file;
file.open("FUNBackJS.js");
string strFileContent, strTemp;
char szTemp[] = ""; do
{
file.read(szTemp, );
strFileContent.append(szTemp);
memset(szTemp, , );
} while (!file.fail());
file.close();
pScriptControl->AddCode(strFileContent.c_str()); string stringFun("FUNBackJS('");
string stringOp = stringFun + (LPCSTR)(CStringA)(stringData)+"','" + (LPCSTR)(CStringA)(m_strJSBaseKey)+"');"; _bstr_t bstr;
bstr = (_bstr_t)stringOp.c_str();
VARIANT variant_str = pScriptControl->Eval(bstr);
string strDecryped = (const char*)_bstr_t(variant_str); CString cstrDecryped(strDecryped.c_str()); return cstrDecryped;
}
#include <atlbase.h>
#include <atlstr.h>
#import "C:\\Windows\\SysWOW64\\msscript.ocx" // msscript.ocx

stdafx.h

VC 中引用js文件的更多相关文章

  1. 在MS CRM 4.0中引用JS文件

    引用: http://blog.csdn.net/qzw4549689/article/details/6027987 1.编写好JS代码,在ISV目录下新建一个目录javascripts,将JS文件 ...

  2. JS中关于JS文件的引用以及问题

    问题描述:          由于JSP中JS函数比较多,因此打算新建一个JS文件在JSP中引用JS文件,现在出现如下问题,JS如何引用时正确的,JS引用之后出现乱码如何解决? 问题解决: (1)JS ...

  3. 在SharePoint解决方案中使用JavaScript (1) – 引用.js文件

    本文是系列文章的第一篇. 在SharePoint解决方案中使用JavaScript (0) 作为在SharePoint应用程序中使用JavaScript的第一步,就是要知道如何将一个写好的.js文件, ...

  4. html或者jsp页面引用jar包中的js文件

    一,页面上引用jar包中的js文件的方法 使用java web框架AppFuse的时候发现,jquery.bootstrap等js框架都封装到jar包里面了.这些js文件通过一个wro4j的工具对其进 ...

  5. 擦他丫的,今天在Django项目中引用静态文件jQuery.js 就是引入报错,终于找到原因了!

    擦 ,今天在Django项目中引用静态文件jQuery.js 就是引入报错,终于找到原因了! 问题在于我使用的谷歌浏览器,默认使用了缓存,导致每次访问同一个url时,都返回的是缓存里面的东西.通过谷歌 ...

  6. 在winform中调用js文件并输出结果

    在winform中调用js文件并输出结果默认分类 2007-10-19 16:35:06 阅读25 评论0 字号:大中小 由于项目需要在winform中调一个强大的js,所以把这个tip记录在此: 1 ...

  7. javascript中外部js文件取得自身完整路径得办法

    原文:javascript中外部js文件取得自身完整路径得办法 有时候我们需要引入一个外部js文件,这个js文件又需要用到自己的路径或者是所在的目录,别问怎么又这么变态的需求,开发做久了各种奇葩需求也 ...

  8. JavaScript:引用js文件时的编码格式问题

    JavaScript:引用js文件时的编码格式问题 如果js文件的编码格式是utf-8,并且含有中文,那么按照正常的方法引用,就会出现乱码的情况. 方法/步骤   如果js文件的编码格式是utf-8, ...

  9. eclipse中的js文件报错的解决办法

    在使用别人的项目的时候,导入到eclipse中发现js文件报错,解决办法是关闭eclipse的js校验功能. 三个步骤: 1. 右键点击项目->properties->Validation ...

随机推荐

  1. verilog 除法器

    verilog 除法器:利用二进制的除法翻译过来的硬件电路 1.1 实现算法 基于减法的除法器的算法: 对于32的无符号除法,被除数a除以除数b,他们的商和余数一定不会超过32位.首先将a转换成高32 ...

  2. 【ELK】之Kibana使用

    GET _search { "query": { "match_all": {} } } GET _cat/indices GET elk- GET /elk- ...

  3. git 更新远程分支列表

    git remote update origin --prune git remote update origin -p

  4. inception 自动化sql审核

    ##概念: Inception是一款自动化运维的利器,有别与现在各个公司使用的方式,使用Inception,将会给DBA带来最大的便利性,将DBA从繁冗的工作中解放出来,做一些更多的自动化工作,或者从 ...

  5. centos7 安装percona-toolkit工具包的安装和使用

    一.检查和安装与Perl相关的模块 PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境. 依赖包检查命令为: rpm -qa perl-DBI perl-DBD-MySQL perl ...

  6. toString 和new String()区别

    public class NewStringTestDemo { public static void main(String[] args) { String s = "你好"; ...

  7. CountDownLatch两种用法

    1.当前线程等待其他线程执行完毕后在执行. 2.模拟高并发场景. 在多线程编程里,CountDownLatch是一个很好的计数器工具. 常用的两个方法: 1.计数器减一 public void cou ...

  8. 详解vue-cli脚手架项目-package.json

    该随笔收藏自: 详解vue-cli脚手架项目-package.json package.json是npm的配置文件,里面设定了脚本以及项目依赖的库. npm run dev 这样的命令就写在packa ...

  9. web socket client

    <!DOCTYPE HTML> <html> <head> <title>My WebSocket</title> </head> ...

  10. Java并发编程三个性质:原子性、可见性、有序性

      并发编程 并发程序要正确地执行,必须要保证其具备原子性.可见性以及有序性:只要有一个没有被保证,就有可能会导致程序运行不正确  线程不安全在编译.测试甚至上线使用时,并不一定能发现,因为受到当时的 ...