tags:

views:

106

answers:

3

Guys,

I'm mostly a Java dev, with a good background in C/C++ for *nixes. Now I need to write a small utility for Win32 which can be considered a system tool: it should be able to access windows processes, handles, etc. In addition, it needs a simple GUI (but not command line).

What's the best way for me to start? Any good proven online tutorials, references, etc? IDE? (VS Express?)

Thanks for your help

+2  A: 

Definitely, the easiest way for you will be using C# since you come from a Java world. Keep in mind if you use C#, the program will need .NET framework installed on the client machine to run it.

If you need pure WIN32 program, then you'll have to go with C/C++ and the WIN32 API. It will be definitely be harder than the first option, but program distribution could be simpler.

Wether you take first option or second, I would recommend any of the Charles Petzold's book on the subject.

Pablo Santa Cruz
two questions: will I be able to easily access win32 API from .net?2) .net - comes preinstalled with vista? (that's my deployment)
Yoni Roit
1) Yes, but you won't need to. Windows Forms probably has everything you need.2) It does! Version 3.0.
Pablo Santa Cruz
A: 

Start off with Windows Programming from the Ground up by Herbert Schildt, or Windows Programming by Charles Petzold and of course, lots of MSDN too

Ram
A: 

It it comes to Win32 programming exactly (I mean developing software which utilizes Win32API functions), there are two types of knowledge you need: firstly, API functions used to build GUI (forms, buttons, comboboxes, etc.) and, secondly, API function which provides integration with Win32 Shell (such as COM objects used to create own items in context menus) and which is used to get access to Windows resources. I think, if there no need to learn about first type of API calls. Just know about their existing and overall working mechanism is sufficient. You can use any of the existing UI framework to create your own application' GUI (Qt, GTK+, WindowsForms, MFC - anything is welcome (but last one is really horrible). So, you need to concern about second type of API calls to allow your program perform deeper interaction with OS itself.

Eskat0n