2017-06-13 83 views
0

我有一個關於將v8嵌入到dll的問題,請幫助我,非常感謝。如何將v8引擎嵌入到dll(C++項目)

我有一個vs2013的ollydbg2.01的odbgscript.dll插件項目,這個DLL調用v8(版本v8-5.6.331)來執行JavaScript語句。 ollydbg.exe調用odbgscript.dll。在odbgscript.dll我打電話V8代碼如下:

#include "v8.h" 
using namespace v8 

    V8::InitializeICU();     
    V8::Initialize();  

    Isolate::CreateParams create_params;   
    Isolate* isolate = Isolate::New(create_params);  
    Isolate::Scope isolate_scope(isolate); 

    HandleScope handle_scope(isolate);  
    Local<Context> context = Context::New(isolate);  
    Context::Scope context_scope(context); 

    Local<String> source = String::NewFromUtf8(isolate, "'hello'+'world'"); 
    Local<Script> script = Script::Compile(source); 
    Local<Value> result = script->Run(); 

上面的代碼可以成功vs2013編譯,但ollydbg.exe運行後,執行odbgscript.dll插件,ollydbg.exe被中止,一些錯誤的提示以下:

操作系統:6.1.7601,平臺2版(Service Pack 1) OllyDbg的版本:2.01.00 異常代碼:C0000005 參數:00000000 00000000 異常地址:00000000

+0

請提供[mcve]您是否初始化該平臺?你是否創建了一個隔離區?除非你提供一個重現問題的完整例子,否則我無法分辨 – xaxxon

回答