Question about Windows API/SDK

Started by
13 comments, last by hplus0603 17 years, 11 months ago
i recomend you learn SDL. It's alot easier to use than Win32, plus it has faster input and graphics. The applications made for SDL will look just as professional as win32 apps, and they'll be more portable.
Advertisement
I'm still debating whether to make the move to C#, but I have a few questions:
1. What makes programming windows applications easier in C# than C++?
2. Given that C# is so tied to the .NET framework, doesn't that make it pretty much a windows-only programming language? I'm aware of the irony of wanting to learn the windows SDK and then complaining about C# being so plataform specific, but my concern is that if I'm going to learn a whole new programming language, I'd like to be able to use those skills in other platforms. Considering it's microsoft, I'm afraid that they might integrate it so much to their OS that using it for other purposes won't be useful.
Quote:Original post by harleking
1. What makes programming windows applications easier in C# than C++?
Mainly the fact that working with the .NET framework is generally nicer when using a language that was designed for it (C#) instead of a language that has been bent until it roughly fits (C++). The .NET framework is by far the easiest way to make Windows UI-based applications at the moment.

Quote:
2. Given that C# is so tied to the .NET framework, doesn't that make it pretty much a windows-only programming language?
Not at all. Check out the Mono project.

Richard "Superpig" Fine - saving pigs from untimely fates - Microsoft DirectX MVP 2006/2007/2008/2009
"Shaders are not meant to do everything. Of course you can try to use it for everything, but it's like playing football using cabbage." - MickeyMouse

I'd just like to point out the windowsx.h header that is part of the windows SDK. It is kind of like a light weight MFC. You may find it useful.
MFC is still used a lot, but its future does not seem bright. It also sort-of assumes that you will create your windows through the GUI builder in Visual Studio.

If I were to write a GUI in C++ on Windows, I'd use plain Win32. Start by reading the "Windows Interface" section of MSDN.

There is a light-weight template library that may help in the creation of standard Windows programs, called WTL. However, it is pretty poorly documented, and the tutorials I've found aren't that great.

The main thing to remember is that, in Windows, a "window" is anything that renders on the screen. What you move, as a user, is a "top-level" or "frame" window, but the menu bar, the buttons, the edit boxes and all the other controls are also "windows" in Win32 terminology, and created using CreateWindow() (or more likely, CreateWindowEx()).
enum Bool { True, False, FileNotFound };

This topic is closed to new replies.

Advertisement