首页 > 编程知识 正文

cwebbrowser2js注入的简单介绍

时间:2023-12-19 12:29:21 阅读:317603 作者:YIHP

本文目录一览:

C# webbrowser控件是否能获取JS加载的数据?

可以的,但这个控件存在内存泄露哦

App.Browser.Navigate("目标地址", UriKind.Absolute));

App.Browser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(Browser_DocumentCompleted);

private void Browser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)

{if (e.Url.AbsoluteUri.ToUpper() == String.Format(UploadConfig.UpLoadUrl, App.CUser.SkyDriveUID).ToUpper())br {br HtmlElement div = App.Browser.Document.All["name"];br App.Browser.DocumentCompleted -= new WebBrowserDocumentCompletedEventHandler(Browser_DocumentCompleted);br}

}

div.InnerHtml可以拿到你想要的

VC++ CWebBrowser2控件 当js错误时 高手请进

一看这个题目就知道很难的一道题在使用Navigate方法的时候加上CWebBrowser2::SetSilent(true);就可以解决问题了。

webbrowser 里面的js怎么调用C#

通过webBrowser实现C#和javascript互调

实现步骤:

一、新建一个窗体,加入webBrowser控件

控件名:webBrowser1

二、在窗体后台代码加入如下定义

[System.Runtime.InteropServices.ComVisibleAttribute(true)]

public partial class Form1 : Form

{

...

}

三、加载网页

webBrowser1.Navigate(Application.StartupPath + "/UpDateReport.htm");

webBrowser1.ObjectForScripting = this; //这句必须,不然js不能调用C#

四、调用脚本方法

/// summary

/// 脚本方法

/// /summary

/// param name="tag"JS函数名|参数1|参数2/param

/// returns/returns

private object EXEC_JS(System.Windows.Forms.WebBrowser webBrowser, string tag)

{

string[] args = tag.Split('|');

if (args.Length == 1)

{

return webBrowser.Document.InvokeScript(args[0], null);

}

else

{

object[] objects = new object[args.Length - 1];

Array.Copy(args, 1, objects, 0, objects.Length);

return webBrowser.Document.InvokeScript(args[0], objects);

}

}

五、C#调用脚本方法例子,可以有返回值

//JS方法

script language="javascript"

function js_fun(args)

{

alert("我是通过js脚本弹出的。你输入的内容是:"+args);

return "JAVASCRIPT";

}

/script

//C#代码

object returnvalue = EXEC_JS(webBrowser1, "js_fun|参数字符串");

MessageBox.Show("js方法返回值是:" + returnvalue.ToString());

六、JS调用C#方法的例子

//C#方法

public string Test(string args)

{

return "你输入的是:"+args;

}

//JS代码

script language="javascript"

window.onload = function()

{

var CS_returnvalue= window.external.Test("aaa");

alert(CS_returnvalue);

}

/script

CWebBrowser2用JS操作HTML代码,该怎么处理

JS输入输出HTML代码有2种方式:

1、在需要输出的的位置写JS代码:scriptdocument.write('需要输出的内容')/script

比如:

ul

scriptdocument.write('lia href="/wap2/newsPage/1320"5/a/lilia href="/wap2/newsPage/1319"4/a/lilia href="/wap2/newsPage/1318"3/a/lilia href="/wap2/newsPage/1317"2/a/lilia href="/wap2/newsPage/1316"1/a/li');

/script

/ul

2、采用js的innerHTML方法:

例子;

ul id="ul"/ul

script

document.getElementById("ul").innerHTML='lia href="/wap2/newsPage/1320"5/a/lilia href="/wap2/newsPage/1319"4/a/lilia href="/wap2/newsPage/1318"3/a/lilia href="/wap2/newsPage/1317"2/a/lilia href="/wap2/newsPage/1316"1/a/li';

/script

如何在WebBrowser控件中注入Javascript脚本

在WebBrowser中注入并执行javascript代码

更多 0

c#WebBrowserWinForm

WebBrowser控件用来显示网页内容,有时候我们需要在网页中执行一段自定义的javascript代码。

如下是实现和注释:

//找到head元素

HtmlElement head = webBrowser1.Document.GetElementsByTagName("head")[0];

//创建script标签

HtmlElement scriptEl = webBrowser1.Document.CreateElement("script");

IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement;

//给script标签加js内容

element.text = "function sayHello() { alert('hello') }";

//将script标签添加到head标签中

head.AppendChild(scriptEl);

//执行js代码

webBrowser1.Document.InvokeScript("sayHello");

VC6.0下 Activex(Ocx)中使用CWebBrowser2

手动注册吧,这个好像是注册命令的路径跟文件存放的路径不同造成的, 用管理员运行CMD,然后输入Regsvr32空格player.ocx的路径 你的应该是Regsvr32 c:program file银货通视频插件player.ocx 或者把player.ocx复制到C...

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。