作者: duwenjie15
查看: 956|回复: 4

【MB内核浏览器】Dskin MiniblinkBrowser For AnyCPU

[复制链接]
duwenjie15 发表于 2019-8-1 05:54:35 | 显示全部楼层 |阅读模式
查看: 956|回复: 4
说明:
如题,解决Dskin MiniblinkBrowser浏览器内核只能运行在x86模式的毛病。
  • 将附件中的mb_x64.dll放入bin目录下
  • 将下面代码放入项目中
  • 在Main中运行Init()即可。

代码预览:
[C#] 纯文本查看 复制代码
public class MiniblinkPinvoke_x64
    {
        public static void Init()
        {
            if (IntPtr.Size == 8)
            {
                var source = typeof(DSkin.DirectUI.MiniblinkPInvoke).GetMethods();
                var traget = typeof(DSkin.DirectUI.MiniblinkPinvoke_x64).GetMethods();
                foreach (var methodinfo in source)
                {
                    var t = traget.FirstOrDefault(x => x.Name == methodinfo.Name && x.ReturnType == methodinfo.ReturnType && x.GetParameters().Length == methodinfo.GetParameters().Length);
                    if (t != null)
                    {
                        IntPtr jmpptr = methodinfo.MethodHandle.GetFunctionPointer();
                        IntPtr dataptr = t.MethodHandle.GetFunctionPointer();
                        byte[] data = new byte[8];
                        Marshal.Copy(dataptr, data, 0, 8);
                        Marshal.Copy(data, 0, jmpptr, 8);
                    }
                }
            }
        }
        public const string x64_Dll = "mb_x64.dll";
        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeFinalize")]
        public static extern void wkeFinalize();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetStoragePath")]
        public static extern void wkeSetStoragePath(String directory);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetVersionString")]
        public static extern IntPtr wkeGetVersionString();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnWillReleaseScriptContext")]
        public static extern void wkeOnWillReleaseScriptContext(IntPtr webView, wkeWillReleaseScriptContextCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnDidCreateScriptContext")]
        public static extern void wkeOnDidCreateScriptContext(IntPtr webView, wkeDidCreateScriptContextCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsMainFrame")]
        public static extern bool wkeIsMainFrame(IntPtr webView, IntPtr frameId);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetViewProxy")]
        public static extern void wkeSetViewProxy(IntPtr webView,ref wkeProxy proxy);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Auto, EntryPoint = "wkeLoadW")]
        public static extern void wkeLoadW(IntPtr webView, String url);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeMalloc")]
        public static extern IntPtr wkeMalloc(Int32 size);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnConsole")]
        public static extern void wkeOnConsole(IntPtr webView, wkeConsoleMessageCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnCreateView")]
        public static extern void wkeOnCreateView(IntPtr webView, wkeCreateViewCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnDocumentReady")]
        public static extern void wkeOnDocumentReady(IntPtr webView, wkeDocumentReadyCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnDocumentReady2")]
        public static extern void wkeOnDocumentReady2(IntPtr webView, wkeDocumentReady2Callback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnLoadingFinish")]
        public static extern void wkeOnLoadingFinish(IntPtr webView, wkeLoadingFinishCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnNavigation")]
        public static extern void wkeOnNavigation(IntPtr webView, wkeNavigationCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeWebFrameGetMainWorldScriptContext")]
        public static extern void wkeWebFrameGetMainWorldScriptContext(IntPtr webView, IntPtr webFrameId, IntPtr contextOut);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnPaintUpdated")]
        public static extern void wkeOnPaintUpdated(IntPtr webView, wkePaintUpdatedCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnTitleChanged")]
        public static extern void wkeOnTitleChanged(IntPtr webView, TitleChangedCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnURLChanged")]
        public static extern void wkeOnURLChanged(IntPtr webView, UrlChangedCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnMouseOverUrlChanged")]
        public static extern void wkeOnMouseOverUrlChanged(IntPtr webView, TitleChangedCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnURLChanged2")]
        public static extern void wkeOnURLChanged2(IntPtr webView, wkeUrlChangedCallback2 callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkePostURL")]
        public static extern void wkePostURL(IntPtr wkeView, String url, String postData, Int32 postLen);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkePostURLW")]
        public static extern void wkePostURLW(IntPtr wkeView, String url, String postData, Int32 postLen);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeReload")]
        public static extern void wkeReload(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetCookieEnabled")]
        public static extern void wkeSetCookieEnabled(IntPtr webView, bool enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetMenuItemText")]
        public static extern void wkeSetMenuItemText(String item, String text);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetMenuItemVisible")]
        public static extern void wkeSetMenuItemVisible(String item, bool enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetTransparent")]
        public static extern void wkeSetTransparent(IntPtr webView, bool transparent);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetZoomFactor")]
        public static extern void wkeSetZoomFactor(IntPtr webView, Single factor);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeStopLoading")]
        public static extern void wkeStopLoading(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeTitleW")]
        public static extern IntPtr wkeTitleW(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeWindowOnPaint")]
        public static extern void wkeWindowOnPaint(IntPtr webView, IntPtr bits, Int32 pitch);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetWidth")]
        public static extern Int32 wkeGetWidth(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetZoomFactor")]
        public static extern Single wkeGetZoomFactor(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGoBack")]
        public static extern bool wkeGoBack(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorSelectAll")]
        public static extern void wkeEditorSelectAll(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGoForward")]
        public static extern bool wkeGoForward(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeInitialize")]
        public static extern void wkeInitialize();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeInitializeEx")]
        public static extern void wkeInitializeEx(IntPtr settings);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeConfigure")]
        public static extern void wkeConfigure(IntPtr settings);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsCookieEnabled")]
        public static extern bool wkeIsCookieEnabled(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsDirty")]
        public static extern bool wkeIsDirty(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsLoadComplete")]
        public static extern bool wkeIsLoadComplete(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsLoading")]
        public static extern bool wkeIsLoading(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsLoadingCompleted")]
        public static extern bool wkeIsLoadingCompleted(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsLoadingFailed")]
        public static extern bool wkeIsLoadingFailed(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsLoadingSucceeded")]
        public static extern bool wkeIsLoadingSucceeded(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeIsTransparent")]
        public static extern bool wkeIsTransparent(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSCollectGarbge")]
        public static extern void wkeJSCollectGarbge();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSGet")]
        public static extern Int64 wkeJSGet(IntPtr es, Int64 jsValue, String proName);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeLimitPlugins")]
        public static extern void wkeLimitPlugins(IntPtr handle, bool b);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeLoadFile")]
        public static extern void wkeLoadFile(IntPtr webView, String filename);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeLoadHTML")]
        public static extern void wkeLoadHTML(IntPtr webView, String html);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeLoadHTMLW")]
        public static extern void wkeLoadHTMLW(IntPtr webView, String html);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeLoadURL")]
        public static extern void wkeLoadURL(IntPtr webView, IntPtr url);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Auto, EntryPoint = "wkeLoadURLW")]
        public static extern void wkeLoadURLW(IntPtr webView, String url);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Auto, EntryPoint = "wkeLoadFileW")]
        public static extern void wkeLoadFileW(IntPtr webView, String url);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeResize")]
        public static extern void wkeResize(IntPtr webView, Int32 w, Int32 h);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetCookie")]
        public static extern IntPtr wkeGetCookie(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetCookie")]
        public static extern void wkeSetCookie(IntPtr webView, IntPtr url, IntPtr cookie);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetCookieW")]
        public static extern string wkeGetCookieW(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetCookieJarPath")]
        public static extern void wkeSetCookieJarPath(IntPtr webView, String path);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetCookieJarFullPath")]
        public static extern void wkeSetCookieJarFullPath(IntPtr webView, String path);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetLocalStorageFullPath")]
        public static extern void wkeSetLocalStorageFullPath(IntPtr webView, String path);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "Utf8StringToWkeChar")]
        public static extern string Utf8StringToWkeChar(IntPtr param0);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCallOnMainThread")]
        public static extern void wkeCallOnMainThread(EweCallBack _callback, IntPtr context);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCallOnMainThreadAndWait")]
        public static extern void wkeCallOnMainThreadAndWait(EweCallBack _callback, IntPtr context);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCanGoBack")]
        public static extern bool wkeCanGoBack(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCanGoForward")]
        public static extern bool wkeCanGoForward(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "WkeCharToUtf8String")]
        public static extern IntPtr WkeCharToUtf8String(String param0);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeContextMenuEvent")]
        public static extern bool wkeContextMenuEvent(IntPtr webView, Int32 x, Int32 y, UInt32 flags);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCreateWebView")]
        public static extern IntPtr wkeCreateWebView();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCreateWindow")]
        public static extern IntPtr wkeCreateWindow(IntPtr hParent);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCreateWebWindow")]
        public static extern IntPtr wkeCreateWebWindow(wkeWindowType type, IntPtr parent, Int32 x, Int32 y, Int32 width, Int32 height);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeShowWindow")]
        public static extern void wkeShowWindow(IntPtr webWindow, bool show);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeDestroyWebView")]
        public static extern void wkeDestroyWebView(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEnableContextMenu")]
        public static extern void wkeEnableContextMenu(IntPtr webView, bool enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEnableWindow")]
        public static extern void wkeEnableWindow(IntPtr webView, bool enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeFree")]
        public static extern void wkeFree(IntPtr ptr);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetContentHeight")]
        public static extern Int32 wkeGetContentHeight(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetContentWidth")]
        public static extern Int32 wkeGetContentWidth(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetHeight")]
        public static extern Int32 wkeGetHeight(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsEmptyArray")]
        public static extern Int64 jsEmptyArray(IntPtr es);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsGlobalObject")]
        public static extern Int64 jsGlobalObject(IntPtr es);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsToDouble")]
        public static extern double jsToDouble(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsGetWebView")]
        public static extern IntPtr jsGetWebView(IntPtr es);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsToFloat")]
        public static extern Single jsToFloat(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsToInt")]
        public static extern Int32 jsToInt(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsTobool")]
        public static extern bool jsTobool(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeRunJS")]
        public static extern Int64 wkeRunJS(IntPtr webView, IntPtr script);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeRunJSW")]
        public static extern Int64 wkeRunJSW(IntPtr webView, String script);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeRunJsByFrame")]
        public static extern Int64 wkeRunJsByFrame(IntPtr webView, IntPtr frameId, IntPtr script, bool isInClosure);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsSetGlobal")]
        public static extern void jsSetGlobal(IntPtr es, String prop, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsGetGlobal")]
        public static extern Int64 jsGetGlobal(IntPtr es, String prop);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnAlertBox")]
        public static extern void wkeOnAlertBox(IntPtr webView, AlertBoxCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnDownload")]
        public static extern void wkeOnDownload(IntPtr webView, wkeDownloadCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnConfirmBox")]
        public static extern void wkeOnConfirmBox(IntPtr webView, ConfirmBoxCallback callback);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnPromptBox")]
        public static extern void wkeOnPromptBox(IntPtr webView, wkePromptBoxCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetViewDC")]
        public static extern IntPtr wkeGetViewDC(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeFireMouseEvent")]
        public static extern bool wkeFireMouseEvent(IntPtr webView, UInt32 message, Int32 x, Int32 y, UInt32 flags);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeFireMouseWheelEvent")]
        public static extern bool wkeFireMouseWheelEvent(IntPtr webView, Int32 x, Int32 y, Int32 delta, UInt32 flags);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeFireKeyUpEvent")]
        public static extern bool wkeFireKeyUpEvent(IntPtr webView, UInt32 virtualKeyCode, UInt32 flags, bool systemKey);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeFireKeyDownEvent")]
        public static extern bool wkeFireKeyDownEvent(IntPtr webView, UInt32 virtualKeyCode, UInt32 flags, bool systemKey);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeFireKeyPressEvent")]
        public static extern bool wkeFireKeyPressEvent(IntPtr webView, UInt32 charCode, UInt32 flags, bool systemKey);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetFocus")]
        public static extern void wkeSetFocus(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetCaretRect")]
        public static extern wkeRect wkeGetCaretRect(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeKillFocus")]
        public static extern void wkeKillFocus(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsFunction")]
        public static extern bool wkeJSIsFunction(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsUndefined")]
        public static extern bool wkeJSIsUndefined(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsNull")]
        public static extern bool wkeJSIsNull(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsArray")]
        public static extern bool wkeJSIsArray(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsTrue")]
        public static extern bool wkeJSIsTrue(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsFalse")]
        public static extern bool wkeJSIsFalse(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSGetAt")]
        public static extern Int64 wkeJSGetAt(IntPtr es, Int64 @object, Int32 index);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsObject")]
        public static extern Int64 jsObject(IntPtr es, IntPtr obj);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsFunction")]
        public static extern Int64 jsFunction(IntPtr es,ref tagjsData obj);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsGetData")]
        public static extern IntPtr jsGetData(IntPtr es, Int64 jsValue);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsGet")]
        public static extern Int64 jsGet(IntPtr es, Int64 objectjsValue, String prop);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsSet")]
        public static extern void jsSet(IntPtr es, Int64 objectjsValue, String prop, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsGetAt")]
        public static extern Int64 jsGetAt(IntPtr es, Int64 objectjsValue, Int32 index);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsSetAt")]
        public static extern void jsSetAt(IntPtr es, Int64 objectjsValue, Int32 index, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsGetLength")]
        public static extern Int32 jsGetLength(IntPtr es, Int64 objectjsValue);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsSetLength")]
        public static extern void jsSetLength(IntPtr es, Int64 objectjsValue, Int32 length);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsInt")]
        public static extern Int64 jsInt(Int32 n);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsFloat")]
        public static extern Int64 jsFloat(Single f);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsDouble")]
        public static extern Int64 jsDouble(Double d);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsbool")]
        public static extern Int64 jsbool(bool b);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsUndefined")]
        public static extern Int64 jsUndefined();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsNull")]
        public static extern Int64 jsNull();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsTrue")]
        public static extern Int64 jsTrue();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsFalse")]
        public static extern Int64 jsFalse();

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsEmptyObject")]
        public static extern Int64 jsEmptyObject(IntPtr es);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSGetData")]
        public static extern tagjsData wkeJSGetData(IntPtr es, Int64 jsValue);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsCall")]
        public static extern Int64 jsCall(IntPtr es, Int64 func, Int64 thisObject,ref Int64 args, Int32 argCount);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsCallGlobal")]
        public static extern Int64 jsCallGlobal(IntPtr es, Int64 func,ref Int64 args, Int32 argCount);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeCreateStringW")]
        public static extern IntPtr wkeCreateStringW(String str, UInt32 len);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeDeleteString")]
        public static extern void wkeDeleteString(IntPtr str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkPoint&eSetWTFString")]
        public static extern void wkeSetWTFString(IntPtr wtfstr, String str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsEval")]
        public static extern Int64 jsEval(IntPtr es, String str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsEvalW")]
        public static extern Int64 jsEvalW(IntPtr es, String str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsEvalExW")]
        public static extern Int64 jsEvalExW(IntPtr es, String str, bool isInClosure);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetWTFString")]
        public static extern IntPtr wkeGetWTFString(IntPtr wtfstr);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkePaint")]
        public static extern void wkePaint(IntPtr webView, IntPtr bits, Int32 pitch);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetDragEnable")]
        public static extern void wkeSetDragEnable(IntPtr webView, bool b);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetDragFiles")]
        public static extern void wkeSetDragFiles(IntPtr webView, ref Point clintPos, ref Point screenPos, IntPtr[] files, Int32 filesCount);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetCursorInfoType")]
        public static extern WkeCursorInfo wkeGetCursorInfoType(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkePaint2")]
        public static extern void wkePaint2(IntPtr webView, IntPtr bits, Int32 bufWid, Int32 bufHei, Int32 xDst, Int32 yDst, Int32 w, Int32 h, Int32 xSrc, Int32 ySrc, bool bCopyAlpha);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkePaintDC")]
        public static extern void wkePaintDC(IntPtr handle, IntPtr hdc);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsArg")]
        public static extern Int64 jsArg(IntPtr es, Int32 argIdx);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsArgCount")]
        public static extern Int32 jsArgCount(IntPtr wkeJSState);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGlobalExec")]
        public static extern IntPtr wkeGlobalExec(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsTypeOf")]
        public static extern jsType jsTypeOf(Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsArgType")]
        public static extern jsType jsArgType(IntPtr es, Int32 argIdx);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsNumber")]
        public static extern bool wkeJSIsNumber(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsString")]
        public static extern bool wkeJSIsString(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsBool")]
        public static extern bool wkeJSIsBool(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJSIsObject")]
        public static extern bool wkeJSIsObject(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorUnSelect")]
        public static extern void wkeEditorUnSelect(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetEditable")]
        public static extern void wkeSetEditable(IntPtr webView, bool editable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetDebugConfig")]
        public static extern void wkeSetDebugConfig(IntPtr webView, String debugString, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeShowDevtools")]
        public static extern void wkeShowDevtools(IntPtr webView, IntPtr path, wkeOnShowDevtoolsCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeMediaVolume")]
        public static extern Single wkeMediaVolume(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetMediaVolume")]
        public static extern void wkeSetMediaVolume(IntPtr webView, Single volume);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetMediaVolume")]
        public static extern Single wkeGetMediaVolume(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeNetSetHTTPHeaderField")]
        public static extern void wkeNetSetHTTPHeaderField(IntPtr job, String key, String value, bool response);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Auto, EntryPoint = "wkeNetSetMIMEType")]
        public static extern void wkeNetSetMIMEType(IntPtr job, String type);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeNetSetURL")]
        public static extern void wkeNetSetURL(IntPtr job, String url);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeNetSetData")]
        public static extern void wkeNetSetData(IntPtr job, IntPtr buf, Int32 len);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeNetOnResponse")]
        public static extern void wkeNetOnResponse(IntPtr webView, wkeNetResponseCallback callback, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeNetGetMIMEType")]
        public static extern void wkeNetGetMIMEType(IntPtr job, IntPtr mime);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeNetHookRequest")]
        public static extern void wkeNetHookRequest(IntPtr job);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeExecCommand")]
        public static extern void wkeExecCommand(IntPtr handle, String command, String args);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetUserAgent")]
        public static extern IntPtr wkeGetUserAgent(IntPtr handle);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetUserAgent")]
        public static extern void wkeSetUserAgent(IntPtr handle, String str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetUserAgentW")]
        public static extern void wkeSetUserAgentW(IntPtr handle, String str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJsBindFunction")]
        public static extern void wkeJsBindFunction(String name, wkeJsNativeFunction fn, IntPtr param, UInt32 argCount);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJsBindGetter")]
        public static extern void wkeJsBindGetter(String name, wkeJsNativeFunction fn, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeJsBindSetter")]
        public static extern void wkeJsBindSetter(String name, wkeJsNativeFunction fn, IntPtr param);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsStringW")]
        public static extern Int64 jsStringW(IntPtr es, IntPtr str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsString")]
        public static extern Int64 jsString(IntPtr es, IntPtr str);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsToString")]
        public static extern IntPtr jsToString(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "jsToStringW")]
        public static extern IntPtr jsToStringW(IntPtr es, Int64 v);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetHandleOffset")]
        public static extern void wkeSetHandleOffset(IntPtr webView, Int32 x, Int32 y);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetHandle")]
        public static extern void wkeSetHandle(IntPtr webView, IntPtr wnd);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetNpapiPluginsEnabled")]
        public static extern void wkeSetNpapiPluginsEnabled(IntPtr webView, bool Enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetHeadlessEnabled")]
        public static extern void wkeSetHeadlessEnabled(IntPtr webView, bool Enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetViewNetInterface")]
        public static extern void wkeSetViewNetInterface(IntPtr webView, IntPtr netInterface);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeNetCancelRequest")]
        public static extern void wkeNetCancelRequest(IntPtr jobPtr);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetCspCheckEnable")]
        public static extern void wkeSetCspCheckEnable(IntPtr webView, bool Enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetNavigationToNewWindowEnable")]
        public static extern void wkeSetNavigationToNewWindowEnable(IntPtr webView, bool Enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetTouchEnabled")]
        public static extern void wkeSetTouchEnabled(IntPtr webView, bool Enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetMemoryCacheEnable")]
        public static extern void wkeSetMemoryCacheEnable(IntPtr webView, bool Enable);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnLoadUrlBegin")]
        public static extern void wkeOnLoadUrlBegin(IntPtr webView, wkeLoadUrlBeginCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeOnLoadUrlEnd")]
        public static extern void wkeOnLoadUrlEnd(IntPtr webView, wkeLoadUrlEndCallback callback, IntPtr callbackParam);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Unicode, EntryPoint = "wkeGetStringW")]
        public static extern IntPtr wkeGetStringW(IntPtr @string);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Unicode, EntryPoint = "wkeToStringW")]
        public static extern IntPtr wkeToStringW(IntPtr @string);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeGetString")]
        public static extern IntPtr wkeGetString(IntPtr @string);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetString")]
        public static extern void wkeSetString(IntPtr @string, String str, UInt32 len);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSetStringW")]
        public static extern void wkeSetStringW(IntPtr @string, String str, UInt32 len);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeSelectAll")]
        public static extern void wkeSelectAll(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorCopy")]
        public static extern void wkeEditorCopy(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorCut")]
        public static extern void wkeEditorCut(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorPaste")]
        public static extern void wkeEditorPaste(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorDelete")]
        public static extern void wkeEditorDelete(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorUndo")]
        public static extern void wkeEditorUndo(IntPtr webView);

        [DllImport(x64_Dll, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.None, EntryPoint = "wkeEditorRedo")]
        public static extern void wkeEditorRedo(IntPtr webView);

    }


效果截图:
1.简易Demo

Dskin MiniblinkBrowser For AnyCPU

Dskin MiniblinkBrowser For AnyCPU


案例源码:
链接: https://pan.baidu.com/s/1jjS0QYkHP25P1j2b5T15Mw 提取码: ci32
回复 论坛版权

使用道具 举报

jhyjhy213 发表于 2019-8-1 08:28:41 | 显示全部楼层
感谢分享
回复

使用道具 举报

wolikefly 发表于 2019-8-5 13:11:31 | 显示全部楼层
牛 !! 感谢 感谢,很好的demo
x894530699 发表于 2019-8-29 13:47:21 | 显示全部楼层
请问 DSkin 的 Miniblink 可以多线程使用吗?
thinhils 发表于 2019-9-30 08:56:33 | 显示全部楼层
我下载了最新的mb.dll,直接支持for any cpu的编译啊
您需要登录后才可以回帖 登录 | 加入CSkin论坛

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|CSkin ( 粤ICP备13070794号

Powered by Discuz! X3.2  © 2001-2013 Comsenz Inc.  Designed by ARTERY.cn
GMT+8, 2019-11-21 19:51, Processed in 0.491669 second(s), 34 queries , Gzip On.

快速回复 返回顶部 返回列表