Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WebView InvokeScript HRESULT 0x80020101

I'm trying to invoke a function in a WebView. Some target functions I need to call are these:

play: function()
{
    if (this.value < this.p.max)
    {
        this.inc();
        this.timer = new it_timer({ object: this, method: "play", timeout: 200 });
    }
    else
        this.stop();
},
stop: function()
{
    if (this.timer)
        this.timer.stop();
    this.playing = false;
    this.playbutton.style.backgroundPosition = "0 0";
}

I started by calling

webView.InvokeScript("play", new string[0]);

but that didn't work, HRESULT: 0x80020101. I found this http://support.microsoft.com/kb/247784 on the topic, but it didn't help me at all.

I then tried to do what I found as an example on multiple sites:

webView.InvokeScript("eval", new string[] { "document.documentElement.outerHTML;");

and

webView.InvokeScript("alert", new string[] {"message"});

but both of those didn't work, giving the same HRESULT code. The WebView renders normally and javascript works fine on the page.

I'd appreciate any help in identifying the problem / finding a solution.

EDIT: It seems "alert" and all methods which are declared in classes don't work. There seems to have been an InvokeMethod(..) in earlier .NET Versions, are there any alternatives for WinRT?

like image 389
SBoss Avatar asked Apr 25 '12 08:04

SBoss


1 Answers

That error occurs when you have a syntax error in the javascript, it appears.

like image 65
Anthony Wieser Avatar answered Oct 20 '22 06:10

Anthony Wieser