• Advertisement
Sign in to follow this  

Windows API documentation

This topic is 3626 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, I'm having one hell of a time figuring out how to use the Windows API documentation and I'm wondering if I'm doing it right. Right now I've just been using the help in VC++ on MSDN, and it could be that I don't understand the organization, but personally I find the help files to be organized terribly. I'm used to the Java API documentation, which is incredibly organized and easy to read IMO. I'm trying to make a windows app using the windows API to create buttons, lists, etc, but I'm wondering if I'm even looking at the right thing for the documentation. Is there a downloadable version or a more organized version somewhere? It really drives me bonkers when every click causes a page refresh (flashing white for a second).

Share this post


Link to post
Share on other sites
Advertisement
Visual studio comes with MSDN on a CD. You can install it and browse it much like you would using any other help documentation.

Although, unless you are wanting to learn the intricacies of each function you use, I would not worry about using MSDN all that much. If your trying to get a few lists and buttons going, try using the visual designer that is available with visual studio. Or if your doing it programatically, try using Google. Mainly, when you google functions and whatnot, the first link should be to MSDN.

So, don't use MSDN directly, use Google (or similar).

Share this post


Link to post
Share on other sites
The downloadable version is included with the Windows SDK, and is identical to the version on MSDN. Samples are also included.

As for using the SDK, since there are no classes functions are grouped by category and usage. The main "Win32" documentation is "Win32 and COM Development". In there the common controls as well as other windowing functions are in the section "User Interface" (then go to Windows Controls). System-level functions like threading, DLL's, heap management, and working with files are contained in System Services. GDI and graphics stuff is in Graphics and Multimedia.

Share this post


Link to post
Share on other sites
Quote:
Original post by Mr_Threepwood

I'm trying to make a windows app using the windows API to create buttons, lists, etc, but I'm wondering if I'm even looking at the right thing for the documentation.


The documentation is fine. Not knowing how to write Windows application is your real problem.

Everything you know about Java, Java's standard library and Swing/AWT you can quickly forget.

If however you want to retain sanity, and ship something usable in reasonable time, C# will be your best bet. Not only it's functionally almost identical to Java, it also provides a fair UI.

WinAPI UI is old, archaic, and clobbered together. It still has roots in Win 3.0, perhaps even earlier, 16-bit versions.

It can be learned, obviously, but are you sure you want to do it now, at this point, when that mess is finally starting to die it's rightful death?

Share this post


Link to post
Share on other sites
Ok thanks for the replies, I'm trying to make a small windows application so maybe it's not my best bet to try and use the WinAPI directly. Maybe I'll mess around with the form designer in VC++. How much better (easier to use) is the windows application making process in VC#? I'd imagine it would be more user friendly than in C++, but is it user friendly enough to warrant me trying out C# rather than C++ for this application? I've never used C# and am only novice-intermediate in C++, but if it's a much nicer interface than I could give it a shot.

The only real requirements I want is that it can run as a standalone program (not needing an interpreter to be installed or anything), and it only has to run on Windows.

Share this post


Link to post
Share on other sites
It's super easy to throw together a windows app in C#. Drag some widgets around, resize them as desired; then tie some events together and you're done.

The target computer will require the .NET framework, but version 2 came in one of the XP service packs and should be widely available.

Share this post


Link to post
Share on other sites
MSDN is primarily a reference, not an online tutorial. You should no more try to learn Win32 programming soley from MSDN than you should try to learn to speak English soley from a dictionary.

While crappy online tutorials are all the rage nowadays I recommend getting yourself a book. A ton of people learned the basics from Petzold. It's showing it's age (unless you're the type that thinks C and hungarian notation are cool), but the material is still good. Your local library probably has a copy or three.

Share this post


Link to post
Share on other sites
Original post by Mr_Threepwood
Ok thanks for the replies, I'm trying to make a small windows application so maybe it's not my best bet to try and use the WinAPI directly. Maybe I'll mess around with the form designer in VC++. How much better (easier to use) is the windows application making process in VC#?


It's same as NetBeans or Delphi UI building. Drag-and-drop, then set properties and attach events. And 0.3 second compilation times when you change something.

Quote:
The only real requirements I want is that it can run as a standalone program (not needing an interpreter to be installed or anything), and it only has to run on Windows.


It requires .Net framework, which should be reasonable common, but you can make it part of your installer.

Windows UI C++ applications require separate installation as well, namely the run-time. So in this respect, you're in the same boat. Note: it might be possible to link the application statically removing the need for run-time libraries, but that's not viable for every type of application. Also, using static libraries may blow your compilation time sky-high.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement