If you depend on your application code making those changes, your app would have to run first before being able to use the Explorer context menu. Your code would also have to remember to remove those changes when it closes or upon uninstall.
Doing it through registry pokes eliminates those problems and makes them permanent until uninstall, which can be handled entirely in the installer, not your code.
That's a good point...
for most situations that I'm thinking of using this tool, I wouldn't be removing the link once it was installed; it would be for situations such as "open this file in MyEditor", or "run MyUtility on this folder"... but yeah, initially creating the link has to be considered, in either case; My plan was to check for existence of my link when running the program, likely in WM_INITDIALOG.. if it's not there, create it.
I mostly write small utilities, so don't always use a dedicated installer...
If you are interrupting the drawing process then that is probably what you would expect to see. The system erases the background and then expects your code to draw the entries. But if the drawing is prevented from happening it will show empty space.
I am not sure that you should be using CB_GETLBTEXT to get your items for drawing. The usual process for an owner drawn control, is that you would have your list of items somewhere in your application. However, it is some while since I have done this so would need to review my code.
I need to detect BackSpace as well as Delete Key in a Edit Box placed on Dialog Box in a Dialog based Application. The Problem is that Edit Box has no more Events like WM_CHAR, WM_KEYDown and WM_Key Up.
I want to start learning C++ and create kind of windows applications like what is made in C# and WPF. I have three options: VS 2022, Code::Blocks, and QT creator 6. Which one is good for developing elegant windows applications?
I had to look up Code::Blocks and noticed that it incorporates wxWidgets. I don't develop GUI apps, but when I looked into the area a while ago, I bookmarked wxWidgets so I could return to it if I ever needed to. C++ doesn't have a GUI library, so you have to find one. And if you want to support different platforms, not just Windows, you need something like wxWidgets, not WPF.
As far as an IDE goes, VS2022 (Community Edition) is free and an excellent IDE. You can probably develop using wxWidgets within VS2022, but you'd likely have to spend some time configuring it, whereas Code::Blocks looks like it should work immediately. But I know next to nothing about this, so you need to get input from someone who does.
Qt Creator is worthwhile ONLY if you embrace Qt. Qt is great but is like its own OS. I still vastly prefer Visual Studio and so did my Qt development with it. Had I ported my last app to Linux, only then would I use Qt Creator.
Don't bother with Code::Blocks. It's adequate for Linux but a waste of time for Windows. Moreover, for Linux CLion is vastly superior.
Visual Studio is always the best choice for creating Win32 GUI applications as it integrates all the tools you will need. It also includes a simple template to create your first GUI program (although it is a bit clunky). And the standard Windows Controls - Win32 apps | Microsoft Docs[^] cover most control types you are likely to need.
"Before entering on an understanding, I have meditated for a long time, and have foreseen what might happen. It is not genius which reveals to me suddenly, secretly, what I have to say or to do in a circumstance unexpected by other people; it is reflection, it is meditation." - Napoleon I
Last Visit: 31-Dec-99 19:00 Last Update: 6-Feb-23 19:48