VC 中引用js文件

#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[20024] = "";

do
{
file.read(szTemp, 20024);
strFileContent.append(szTemp);
memset(szTemp, 0, 20024);
} 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[20024] = "";

do
{
file.read(szTemp, 20024);
strFileContent.append(szTemp);
memset(szTemp, 0, 20024);
} 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

转载于:https://www.cnblogs.com/maomingchao/p/7754029.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值