1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/daemon_process-EasyCKL

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CustomizeJS.cpp 1.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
daemon_process Отправлено 24.01.2017 06:25 5bd0115
#include "CustomizeJS.h"
extern CefRefPtr<CefV8Handler> myV8handle;
CKLEXPORT void WINAPI Chrome_AddJSFunction(CefV8Context* context, wchar_t* name) {
auto myFun = CefV8Value::CreateFunction(name, myV8handle);
auto pObjApp = context->GetGlobal();
pObjApp->SetValue(name, myFun, V8_PROPERTY_ATTRIBUTE_NONE);
}
CKLEXPORT DWORD WINAPI Chrome_GetV8ValueListSize(const CefV8ValueList* arguments) {
return arguments->size();
}
//*************************
CKLEXPORT DWORD WINAPI Chrome_GetV8ValueInt(const CefV8ValueList* arguments, size_t pos) {
auto value = arguments->at(pos);
if (value->IsValid())
return value->GetUIntValue();
return 0;
}
CKLEXPORT DWORD WINAPI Chrome_GetV8ValueStringLength(const CefV8ValueList* arguments, size_t pos) {
auto value = arguments->at(pos);
if (value->IsValid())
return std::wstring(value->GetStringValue()).length();
return 0;
}
CKLEXPORT void WINAPI Chrome_GetV8ValueString(const CefV8ValueList* arguments, size_t pos, wchar_t* buffer, size_t buffer_length) {
auto value = arguments->at(pos);
if (value->IsValid()) {
auto Value = value->GetStringValue().ToWString();
_ECKL_CopyWString(Value, buffer, buffer_length * sizeof(wchar_t));
//std::wstring(value->GetStringValue()).copy(buffer, buffer_length);
//memset(buffer + buffer_length - 2, 0, 2);//最后两个字节置0
}
}
//*************************
CKLEXPORT void WINAPI Chrome_SetV8ReturnValueInt(CefRefPtr<CefV8Value>* lpretval, int value) {
if (lpretval) {
*lpretval = CefV8Value::CreateInt(value);
}
}
CKLEXPORT void WINAPI Chrome_SetV8ReturnValueString(CefRefPtr<CefV8Value>* lpretval, wchar_t* value) {
if (lpretval) {
*lpretval = CefV8Value::CreateString(value);
}
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/daemon_process-EasyCKL.git
git@api.gitlife.ru:oschina-mirror/daemon_process-EasyCKL.git
oschina-mirror
daemon_process-EasyCKL
daemon_process-EasyCKL
master