Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I have a Windows Desktop application that is written in C++/MFC/COM technologies. This application relies heavily on CHTMLEditView (MSHTML Editing platform) and extensively uses IHTMLxxx COM interfaces.
It seems to be working fine on Windows 10 right now, but I want to know if MS will switch to EdgeHTML anytime soon. If that happens, will IHTMLxxx interfaces stop working with EdgeHTML?
I am not an official MS representative. But I may have some helpful insight.
Edge is a Universal Window App. As far as I know, this makes it generally inaccessible from COM, or even managed code (.NET). Consequently, you won't be able to use COM interfaces to interact with the underlying rendering engine (might be WebKit? I'm not sure).
On the other hand, IE uses the Trident rendering engine, which is completely built with COM. Trident is an integral part of the OS, so I really doubt it will go away anytime soon. It's used for so many UI parts (including Windows Explorer) that I don't think Microsoft will have a compelling reason to obsolete it, at least not for a long, long time.
And, there isn't really a good interoperability story at the level of COM for working with Edge. Universal Apps interoperate via contracts, and to some degree, URL protocol handlers, command line arguments, and other "safer" ways of isolating the app. I suspect that it won't be long before actual containerization technology is used for UWAs.
So, no, I wouldn't hold my breath on IHtmlXXX being implemented using EdgeHTML in any timeframe that could be useful for you. Stick with Trident. While Microsoft will probably make sure Edge has the very, very latest in web standards compliance, I don't think they will let IE languish so far behind that you find it unusable.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
I am a QT/C++ GUI developer, and I am familiar with QT event system, meta-object system, concurrency. And I know that QT has separated QtCore which makes it possible to develop server applications using Qt without linking in any unnecessary GUI-related code.
I am confused about whether it is a idea to develop a server application using QT?It is my first time to develop a server application, so any ideas and suggestions about server application with QT is grateful and welcome.
1.My server application will be running on windows(OS),and act as an agent: network request forwarding and buffering, packaging device operations(to provide a unified interface).
2.Need to support 2000 clients concurrent access, so I am worried about whether the event system or signals and qthread are good enough?
The biggest problem in your scenario is not Qt, I would say it is C/C++.
Server-side services usually need a very high fault tolerance.
With languages like PHP, many Java libraries, etc. that kind of comes built-in.
With C++, it does not. One call resulting in an error that you did not remember to catch correctly can easily mess up the whole process. Which then requires you to have multiple processes running at once (to remain responsive even if one process failed) plus a cronjob (or similar) to restart those that died. That's not optimal.
Typically, small parts of an online service are done in C++ (especially if they are performance critical and PHP/Java/Python/Node/etc. wouldn't suffice for the task at hand), and those you could easily do with Qt as well.
But I would advise against coding the part that handles actual user/API requests in C++.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
Improve this question
Hi I want to see an example tech stack where vowpal wabbit is used.
This can be actual application which people are using or an imaginary one which illustrates how VW fits.
We are currently facing a common legacy code problem. Our back end is a collection of web services implemented in C++ using relational DB and Front end is Javascript based web app build on top of those webservices.
Now We want to extend our backend to provide some analytics services which uses machine learning functionality. Having seen around, I quite liked Apache Spark + ML + GraphX as graph already heavily features in our server logic. But the problem is they are not C++. Though they can be made to integrate with it, but as we will be writing lot of our own stuff, We will have to write non-C++/Javascript code, which is currently not under consideration.
Vowpal Wabbit is another candidate that meets our criteria but I am not sure how it would fit over-all right from raw-data storage to application logic. Hence the question.
As I recall VW could be built as static library (check examples in its ./library folder). And perhaps as dynamic library too. Thus it could be just incorporated in your legacy c++ app.
Vowpal can be used as a library and the source code include examples of using the API in C++. We are using it in an iOS application with no problems. The only slight oddity is the need to use boost::program_options to initialize the library and various methods. If you were motivated, you could further develop the API to accept arguments. The maintainers seem to actively encourage the development of patches and features.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
I really need info about Nokia developing. Can I program Nokia (Symbian) devices only with C++, or I need Qt too? (I have Nokia Qt SDK). I'm not really sure about GUI programing, so I ask for help :)
Also it would be really helpful, if you could tell me how to make something like cmd-style on Nokia (Symbian) <--(this is an optional question)
There are probably multiple ways to accomplish what you're trying to write (as Bala.C pointed out, you can use java), but the latest releases of the symbian OS have really encouraged people to write with Qt and specific with QML. That will likely have the fastest and smoothest interface to the device, because they've spent a fair amount of time optimizing it for the platform. Plus it'll make your application more portable to their N9 and other Qt based phones (the yet-to-ship non-windows Lumia).
I'm sure there is likely an API to tie directly into their lower-level architecture for drawing on the screen as well, but I suspect it's both not-well documented (unlike Qt) and subject to change from release to release as they don't expect developers to be using it as much.
Well, I don't think only C++ will do, but with Java it will be great.
Please go through the following link, it could help you equip yourself for Nokia Symbian Development.
http://www.developer.nokia.com/Develop/Web/Web_runtime.xhtml
Good luck
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 11 months ago.
Improve this question
i already know java, c++ (no one framework for GUI development) and little of c# (winforms for gui development) but i'm thinking to ivest my free time to learn Qt, what do you recommend me? has Qt a good future or not?
I think it's worth it. We used Qt recently because it allowed us to make a cross-platform GUI that looks good on Linux, Windows, and Mac. It's kind of a tough learning curve to figure out how to use the QLayouts correctly, but after you do your GUI will look great on many different platforms, with many different font sizes, and with many different window sizes. I like how Qt allows you to make applications that use the native widgets with the native look and feel. Applications built with Qt will look like they belong no matter what platform they are running on. Another great feature is that the Qt framework is small enough that you can just include the Qt DLL files in your application's binary directory, so it simplifies the installation process for your application and makes life easier for everyone (no VMs to install, no 600 MB downloads).
I'd recommend using Qt directly from C++. There are wrappers for it on many languages, but it's hard to believe those wrappers will support every feature and allow you to subclass Qt classes.
You can kind of make cross-platform GUIs with C# WinForms, using Mono on Linux and Mac. But Mono's WinForms is not maintained, the results look really bad, and there are some crippling bugs on macOS.
I can't say enough good things about Qt. Their documentation is bar-none. I've never seen more examples and better documentation that with Qt. It's the standard by which I judge all other frameworks. What's more, the Cross-Platform capabilities are amazing. You get native looking apps, all for free. I'd say go for it.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
Which one would you choose and why?
I'd like to hear opinions from people having experience with embedding a web browser engine in C++ application.
I should stress I need all features of web browser engine except rendering i.e. HTTP client, cookie handling, DOM style HTTP parser, JavaScript engine. How can one strip either WebKit or Gecko of rendering code to avoid coding and run-time overhead?
This is a follow up to What embedded browser for C++ project?
There exists at least one project that has similar requirements and it embeds Gecko. That's Aptana's Jaxer. As far as I know, they have had good success with this. This doesn't quite answer your question, but it does demonstrate that this is certainly doable with Gecko, and there is GPL'd code available that you can look at as to how to do this (Jaxer is an open source project).
There has also been a similar question asked in the past on this. I don't agree with all those answers, as there is some misinformation there such as Firefox being the dictator of what happens in Gecko (it certainly influences, but is not the deciding factor).
Full disclosure: I work on the Mozilla codebase.
I am biased, but I would say WebKit. Especially through the use QtWebKit, it should be easy to have a non-visual web engine (with all the bells and whistles, except painting). And if one is really concerned about excluding all the painting related code, the code base is modular enough (especially the platform abstraction layers) that this can be done in a reasonable time frame.
Notice that QtWebkit (and webkit in general i think) will require you to have an active x server - even though you do not show any GUI (It is required in the core of Qt as QWebPage uses QWidget).
This might be a design flaw in Qt - i havent investigated further into why they might have done this.