精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
First off, let me say, thank you to the developer for their great effort首先,让我说,谢谢开发人员的努力
My need stems from flaws with the .NET WebBrowser control, which has several limits, which as I peer into this solution, it seems to address. The WebBrowser limits I needed to get around were as such:我需要源于.NET WebBrowser控件的缺陷,其中有几个限制,这是我关注这个解决方案,它好像解决了。WebBrowser的缺点为这样的:
1) Not able to get all information from OnNavigate events, including BeforeNavigate 从OnNavigate事件不能得到所有信息,包括BeforeNavigate
2) How to see all posted data. 如何看到所有发布数据。
I made a MSDN article about these limitations here: http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/0a65289b-7eae-4f9f-85ca-108fbe446482[^]
我做了这些限制的MSDN文章在这里:http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/0a65289b-7eae-4f9f-85ca-108fbe446482[^]
I want to try this new csExWB class out. But I do not see a clear path on how to encorporate it into a hello-world like project. If one has say a VS2010 hello-world project, where thet made a simple form-based app that had the WebBrowser control in it. What would one have to do to use csExWB instead of the WebBrowser control?我想尝试这个新的csExWB类。但我没有看到如何将其encorporate成一个hello世界像项目的清晰路径。如果一个人说你好VS2010世界中的项目,其中泰德做了一个简单的基于表单的应用程序,有它的WebBrowser控件。什么总会有必须做的,而不是使用WebBrowser控件csExWB?
I figure in the form_Load method, one would instantiate an instance of the csExWB class and pass the WebBrowser control to it, so the csExWB class could override it, but I do not see anything in csExWB to do this.我想在Form_Load方法,一会实例化csExWB类的一个实例和WebBrowser控件传递给它的,所以csExWB类可以覆盖它,但我没有看到任何csExWB做到这一点。
Also, what would one add as a reference to the hello-world project? Would they add a reference to csExWB.dll? What about Interop.CSEXWBDLMANLib.dll? Would one need to add that as well. Also, what about that csExWBDLMan.dll?此外,你会之一添加作为对你好世界项目的引用?他们会加入到csExWB.dll一个参考?什么Interop.CSEXWBDLMANLib.dll?总会有需要补充的为好。此外,有关csExWBDLMan.dll什么?
First of all csExWB must have been a monumental effort and Mike deserves enormous credit for his oevre ....首先csExWB的一定是一个巨大的努力和迈克值得巨大的信贷他的作品?
It is possible to incorporate csExWB into one's own project, but it requires some tenanicty. I had an application which included a WebBrowser control (effectively this is IE) and had got almost to the completion of my project when I git a problem which I could not overcome (downloading a file without the irritating "File Download" pop-up"). After 2 weeks of frustration I decided the only answer was a webbrowser like csExWB which does (I think) everything WebBrowser/IE does ... but also with a 'silent' and 'automatic' (or at least semi-automatic) file download capability. Perfect. 能够掺入csExWB成自己的项目,但它需要一些tenanicty。我有其中包括一个WebBrowser控件的应用程序(实际上这是IE浏览器),并几乎得到了我的项目完成时,我的git我无法克服(下载文件没有刺激性的“文件下载”弹出“问题)。2周的挫折后,我决定唯一的答案就像csExWB这确实(我认为)web浏览器的一切/ IE浏览器...但也与一个WebBrowser一个'无声'和'自动'(或至少半自动)文件下载功能。完善。
I did hit a few glitches though:Apart from that, lots more grey hairs and many wrinkles, everything in my application is a thousand times better than using WebBrowser/IE 除此之外,其它更多的白发和皱纹很多,一切都在我的应用程序比使用web浏览器/ IE要好千倍
Hey folks! I got it encorporated. Here is what I had to do!嘿人!我明白了encorporated。这是我必须做的!
I had a VS2010 hello-world app. The app added the csExWB.dll and csExWBDLMANLib.dll as references. Supposedly this should also take care of registering csExWBDLMANLib.dll, albeit in my test, I had already manually run RegSvr32 on it ahead of time.我有一个VS2010的hello-world应用程序。该应用程序添加了csExWB.dll和csExWBDLMANLib.dll作为参考。据说,这也应该照顾注册csExWBDLMANLib.dll,尽管的在我的测试,我已经手动在其上运行了RegSvr32的时间提前。
In my app, I added the old WebBrowser, so I could have something to work with the GUI of VS2010's form editor, and I named it "WebBrowser Main".在我的应用程序,我添加了旧的浏览器,这样我就可以有工作VS2010 GUI的形式编辑器,我将其命名为“主要浏览器”
Then I simply declared a cEXWB in my app's main form as a data member;然后我简单地宣布cEXWB应用作为数据成员的主要形式;
public csExWB.cEXWB cEXWB_This = null;And in the MyForm's Constructor I instatiated it as such:
cEXWB_This = new csExWB.cEXWB();
public MyForm()
{
InitializeComponent();
cEXWB_This.Anchor = WebBrowser_Main.Anchor;
cEXWB_This.Name = WebBrowser_Main.Name;
cEXWB_This.Location = WebBrowser_Main.Location;
cEXWB_This.Size = WebBrowser_Main.Size;
cEXWB_This.RegisterAsBrowser = true;
cEXWB_This.Visible = true;
cEXWB_This.MinimumSize = WebBrowser_Main.MinimumSize;
cEXWB_This.TabIndex = WebBrowser_Main.TabIndex;
WebBrowser_Main.Visible = false;
this.Controls.Add(cEXWB_This);
cEXWB_This.BringToFront();
}
then in the MyForm_Load I added the event handler like this:
public void MyForm_Load(object objSender, EventArgs EventArgs_Param)
{
cEXWB_This.BeforeNavigate2 += new csExWB.BeforeNavigate2EventHandler(cEXWB_This_BeforeNavigate2);
cEXWB_This.NavigateComplete2 += new csExWB.NavigateComplete2EventHandler(cEXWB_This_NavigateComplete2);
cEXWB_This.DocumentComplete += new csExWB.DocumentCompleteEventHandler(cEXWB_This_DocumentComplete);
cEXWB_This.ProgressChange += new csExWB.ProgressChangeEventHandler(cEXWB_This_ProgressChange);
}
FYI, I am on a 32-Bit machine, old XP.通知你,我是一个32位的机器上,老XP。
I am using VS2010 SP1 and my project is set to .NET 4, x86我用VS2010 SP1和我的项目设置。4,净x86
i did as above, and I have a refernce to C:\Users\Brian Hart\Dropbox\Downloads\C#\csEXWB\csExWB\DemoApp\bin\Debug\csExWB.dll and C:\Users\Brian Hart\Dropbox\Downloads\C#\csEXWB\csExWB\DemoApp\bin\Debug\Interop.CSEXWBDLMANLib.dll in my project.
My project is a Windows Forms project. 我照以上,我有一个refernce到C:\用户\布赖恩·哈特\ Dropbox的\下载\ C#\ csEXWB\ csExWB\ DemoApp\ BIN \调试\ csExWB.dll和C:\用户\布赖恩·哈特\ Dropbox的\下载\ C#\ csEXWB\ csExWB\ DemoApp\ BIN \调试\ Interop.CSEXWBDLMANLib.dll在我的项目。我的项目是一个Windows窗体项目。
When I build the project, it builds ok当我生成项目,它构建正常。