Sometimes people come on IRC and ask “How do I make a window? learn them later so here is the code to a simple window which will be explained shortly. The book to get on Win32 API. If you want to write programs using just the API . Why you should learn the API before MFC. The Controversy. Too many people.

Author: Dourg Macage
Country: United Arab Emirates
Language: English (Spanish)
Genre: Politics
Published (Last): 25 July 2006
Pages: 382
PDF File Size: 18.6 Mb
ePub File Size: 2.36 Mb
ISBN: 236-9-32895-466-1
Downloads: 60449
Price: Free* [*Free Regsitration Required]
Uploader: Malaran

You will find options for these in the properties of windows shortcuts, and this parameter is how the choice is carried out. The instance handle is set to the value that is passed in as the first parameter to WinMain.

As a matter of fact, most of the information is applicable to any language that can access the API, inlcuding Java, Assembly and Visual Basic.

theForger’s Win32 API Programming Tutorial

Ignatius Junior Member Members posts Reputation: Windows Ofrgers simply displays the first icon numerically by ID in the program files resources, so since we only have one icon, that’s what it is displaying. This parameter MUST be provided, the call will fail without it. This is where all the messages that are sent to our window get processed. A menu that is assigned to a window is automatically removed when the program terminates, so we don’t need to worry about getting rid of it later.

The -c option to bcc32 means compile only, don’t link into ain32. GDI objects are limited in number. Sign In Create Account. This is assuming that we don’t just want to use an Edit or Static control. Registering the Window Class A Window Class stores information about a type of window, including it’s Window Procedure which controls the window, the small and large icons for the window, and the background color.

Then you can either keep working on it for the next little bit or copy it to a new project to modify. Technically speaking this isn’t absolutely required, since modern Windows platforms are pretty good at freeing everything when your program exists, but it’s always a good idea to keep track of your own objects because if get lazy and don’t delete them they have a habit of getting loose. Retreiving the text from the control is easy as well, although slightly more work than setting it Each section builds on the sections before it.


There are quite a few of these and you should look them up and experiment to find out what they do. Since the bitmap I used in this example already meets that condition it doesn’t really need anything special done, but if you’re going to use this code for another image that has a different colour that you want transparent hot pink is a common vorgers then we need to take a second step, and that is use the mask we just created to alter the original image, so that everywhere we want transparent is black.

If you have more than one static or other control that you want to be different colours, then you’ll need to check the Frgers of the control you are getting the message from and change your colours based on that. Next we can delete it altogether with DeleteDC. Any value that is combined with 1 using AND is left unaffected, so if it was 1 to begin with it stays forgsrs, and if it was 0 to begin with it stays Forers following are examples of code that may seem foregrs work, but will not process certian conditions correctly: This way we have more control, and we can forgerw it when the dialog is destroyed forrgers we know we won’t need it any more.

Forfers are required when declaring variables inside a switch statement. The first one is this: Again, like with ReadFile the parameter that returns how much foorgers actually written is required, even though we don’t use it. First I will present the code we ain32 to add that will show the user the filename of our program and then I will integrate it into our program.

This would also give you the option of allowing the user to select an icon of their choice with the common dialogs discussed later, or something to that effect. The book to get on Win32 API. In general I will freely answer any questions that I receive by email, or point you in the direction of a resource that may be of assistance.

In the example code, I use one to display the data of the item selected in the list box, assuming one and only one is selected.

If you know the functions you need to call then it is a matter of seconds to look up the exact parameters in your help files.


Number one cause of people not knowing what the heck is wrong with their programs is probably that they didn’t check the return values of their calls to see if they failed or not.

The -x -Gn options get rid of some extra files the linker creates that you probably don’t need. Using files and the common dialogs You can easily find out the meanings of the various members by looking them up in your documentation. People will get really pissed ain32 if you ask questions you could answer by doing a simple search on MSDN.

But don’t say I didn’t warn you. Dialog FAQ Creating a simple application 1. This way you will understand the fundamental building blocks of all windows applications, and can apply this common knowledge to MFC, Visual Basic, or whatever other framework you choose to work with later.

For most if not all of this tutorial, there will only be one module to worry about, the EXE. Edits One of the most commonly used controls in the windows environment, the EDIT control, is used to allow the user to enter, modify, copy, etc If you don’t have help files, get them. If all of this hurts your head, just call the file test.

Once in a while the same message will be used for more than one kind of control, but in general they will only work on the control they are intended for. We’ll be doing more of this with the common controls in the next couple of sections so you’ll get more practice eventually.

One thing to remember forgeers that dialogs are just windows.


AboutDlgProc is of course the dialog procedure to use to control the dialog. Depending on what you’re going to be using the font for, this and many other flags can be found in MSDN to limit exactly which fonts you want the user to be able to select. It was probably the first API that I memorised all the parameters to. Which really sucks, cause forgesr way I found to do it is a lot more complicated.