Creating a custom web browser

Jan 20, 2012 at 8:45pm
hello everyone.

I am trying to make a custom web browser. I know that there is such a control in Microsoft Visual Studio. however,for the custom things do I need to edit the html of the page before it is shown to the user, and i need to create the connection manually. I know how to use Winsock. All the other stuff just needs to be done as usual ( not custom

So my question is, how can i display html, use Adobe Flashplayer in my browser and all the other stuff and still do the necessary things self ?
Jan 20, 2012 at 9:19pm
Sounds like you want to render HTML yourself and also allow plugins like Flash. That is not a simple thing.

You need to learn about the HTML standards (HTML 5, XHTML, etc), and also learn about Cascading Style Sheets, ideally version 3. Understand the box concept and then just draw. I am unsure as to how to proceed with plugins. My first attempt would be to allow ActiveX just like Internet Explorer, meaning I would create an OLE2 Document container. If you don't know OLE2, you would also have to start there.

For a single experienced developer, this could take 6 months or so, being optimistic and assuming full implementation of the different standards.
Jan 20, 2012 at 10:00pm
doesn't a snipset or a libraryexist that can render HTML?
Jan 20, 2012 at 11:13pm
Maybe. Google up and see what you can find.
Jan 20, 2012 at 11:42pm
closed account (1vRz3TCk)
The WebKit Open Source Project.
http://www.webkit.org/
Jan 21, 2012 at 2:39pm
The Microsoft WebBrowser control does allow you modify the HTML via its document model (see MSDN for information about the IHTMLDocument2 interface.) And some other browser customization is possible using the URLHander mechanism.

What kind of things to you need to be able to do? And what do you mean by "create the connection manually"?

Andy

PS I'm trying to learn more about WebKit, so if anyone knows about a trustworthy site comparing IE + ActiveX with WebKit + NPAPI plugins, please let me know.
Last edited on Jan 21, 2012 at 2:41pm
Jan 21, 2012 at 7:17pm
with creating the connection manually, i mean that search for the correct IP myself, that that isn't done by the API.
And with the WebBrowser control, what architecture is it using, is it MFC?
Jan 21, 2012 at 7:30pm
The WebBrowser control is an ActiveX control. You can use it from any language that supports ActiveX, including C++. Note that you'll need to call CoInitialize() or CoInitializeEx() in every thread that uses the control. And try not to pass it on between threads or you'll have to deal with proxying the interface pointers.
Jan 22, 2012 at 10:05am
What do mean by correct ip? The internet protocol that's used (IPv4 or IPv6)? Or do you mean the ip address?

To programatically control which page is displayed, you can use the IWebBrowser2::Navigate method provided by the WebBrowser control.

Or do you need to do something more involved?
Last edited on Jan 22, 2012 at 10:06am
Jan 22, 2012 at 10:44am
I mean that I say to wich IP to connect. Instead of automatically finding the IP adres, it needs to be done manually.
Jan 22, 2012 at 1:00pm
I am still unclear about what you mean. With a normal browser you have to type in the address. What do you need to do which is more "manual" than this?
Jan 22, 2012 at 5:40pm
type in the IP adres
Jan 22, 2012 at 8:02pm
Well, then IHTMLDocument2::Navigate can solve part of your probem.

Really depends if your a fan of IE or some other browser.
Topic archived. No new replies allowed.