コード例 #1
0
 void OnTitleChangedCallback(IntPtr webView, IntPtr param, IntPtr title)
 {
     if (OnTitleChangeCall != null)
     {
         OnTitleChangeCall(BlinkBrowserPInvoke.Utf8IntptrToString(BlinkBrowserPInvoke.wkeGetString(title)));
     }
 }
コード例 #2
0
ファイル: BlinkBrowser.cs プロジェクト: z5kaosiw/my-demo
 void OnUrlChangedCallback(IntPtr webView, IntPtr param, IntPtr url)
 {
     if (OnUrlChangeCall != null)
     {
         OnUrlChangeCall.Invoke(BlinkBrowserPInvoke.wkeGetString(url).Utf8IntptrToString());
     }
     //Console.WriteLine("OnUrlChangedCallback:URL:" +);
 }
コード例 #3
0
ファイル: BlinkBrowser.cs プロジェクト: z5kaosiw/my-demo
 void OnwkeConsoleMessageCallback(IntPtr webView, IntPtr param, wkeConsoleLevel level, IntPtr message, IntPtr sourceName, int sourceLine, IntPtr stackTrace)
 {
     //Console.WriteLine("Console level" + level);
     Console.WriteLine("Console Msg:" + BlinkBrowserPInvoke.wkeGetString(message).Utf8IntptrToString());
     //Console.WriteLine("Console sourceName:" + wkeGetString(sourceName).Utf8IntptrToString());
     //Console.WriteLine("Console stackTrace:" + wkeGetString(stackTrace).Utf8IntptrToString());
     //Console.WriteLine("Console sourceLine:" + sourceLine);
 }
コード例 #4
0
ファイル: BlinkBrowser.cs プロジェクト: z5kaosiw/my-demo
 IntPtr OnwkeCreateViewCallback(IntPtr webView, IntPtr param, wkeNavigationType navigationType, IntPtr url)
 {
     if (OnCreateViewEvent != null)
     {
         return(OnCreateViewEvent(webView, param, navigationType, BlinkBrowserPInvoke.wkeGetString(url).Utf8IntptrToString()));
     }
     else
     {
         Console.WriteLine("OnwkeCreateViewCallback url:" + BlinkBrowserPInvoke.wkeGetString(url).Utf8IntptrToString());
         Console.WriteLine("OnwkeCreateViewCallback navigationType:" + navigationType);
         return(webView);
     }
 }
コード例 #5
0
ファイル: BlinkBrowser.cs プロジェクト: z5kaosiw/my-demo
        void OnwkeLoadingFinishCallback(IntPtr webView, IntPtr param, IntPtr url, wkeLoadingResult result, IntPtr failedReason)
        {
            //Console.WriteLine("call OnwkeLoadingFinishCallback:" + wkeGetString(url).Utf8IntptrToString());
            //Console.WriteLine("call OnwkeLoadingFinishCallback result:" + result);

            if (result == wkeLoadingResult.WKE_LOADING_FAILED)
            {
                Console.WriteLine("call OnwkeLoadingFinishCallback 加载失败 failedReason:" + BlinkBrowserPInvoke.wkeGetString(failedReason).Utf8IntptrToString());
                HTML = "<h1>" + BlinkBrowserPInvoke.wkeGetString(failedReason).Utf8IntptrToString() + "</h1>";
            }
            else
            {
                this.url = BlinkBrowserPInvoke.wkeGetString(url).Utf8IntptrToString();
                //Console.WriteLine("call OnwkeLoadingFinishCallback:成功加载完成。" + wkeGetString(url).Utf8IntptrToString());
            }
        }
コード例 #6
0
ファイル: BlinkBrowser.cs プロジェクト: z5kaosiw/my-demo
 void OnUrlChangedCallback2(IntPtr webView, IntPtr param, IntPtr frameId, IntPtr url)
 {
     if (frameId.ToInt32() == 1)//主窗口才触发事件
     {
         string nowURL = BlinkBrowserPInvoke.wkeGetString(url).Utf8IntptrToString();
         if (!regex.IsMatch(nowURL))
         {
             if (OnUrlChange2Call != null)
             {
                 OnUrlChange2Call(nowURL);
             }
         }
         else
         {
             //错误不触发改变事件
         }
     }
 }
コード例 #7
0
        public List <PostBody> GetBodys()
        {
            List <PostBody> posts = null;

            if (IsPostMethod())
            {
                IntPtr elementsPtr = BlinkBrowserPInvoke.wkeNetGetPostBody(job);
                if (elementsPtr != IntPtr.Zero)
                {
                    try
                    {
                        wkePostBodyElements elements = (wkePostBodyElements)Marshal.PtrToStructure(elementsPtr, typeof(wkePostBodyElements));
                        if (elements.element != IntPtr.Zero)
                        {
                            posts = new List <PostBody>();
                            for (int i = 0; i < elements.elementSize; i++)
                            {
                                IntPtr             item = Marshal.ReadIntPtr(elements.element, i);
                                wkePostBodyElement e    = (wkePostBodyElement)Marshal.PtrToStructure(item, typeof(wkePostBodyElement));
                                try
                                {
                                    PostBody body = new PostBody();
                                    body.fileLength = e.fileLength;
                                    body.fileStart  = e.fileStart;
                                    body.fileStart  = e.fileStart;
                                    body.filePath   = e.filePath == IntPtr.Zero ? null : Marshal.PtrToStringAnsi(BlinkBrowserPInvoke.wkeGetString(e.filePath));
                                    if (e.data != IntPtr.Zero)
                                    {
                                        wkeMemBuf buf = (wkeMemBuf)Marshal.PtrToStructure(e.data, typeof(wkeMemBuf));
                                        if (buf.data != IntPtr.Zero)
                                        {
                                            body.data = BlinkBrowserPInvoke.IntptrToBytes(buf.data, buf.length);
                                        }
                                    }
                                    posts.Add(body);
                                }
                                finally
                                {
                                    // BlinkBrowserPInvoke.wkeNetFreePostBodyElement(item);
                                }
                            }
                        }
                    }
                    catch
                    {
                        // MessageBox.Show("出错:" + e.Message + "\n" + e.StackTrace);
                    }
                    finally
                    {
                        BlinkBrowserPInvoke.wkeNetFreePostBodyElements(elementsPtr);
                    }
                }
            }
            return(posts);
        }