VOGONS


OT: WinAPI docs?

Topic actions

First post, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Hi! I'm sorry for asking this here: I haven't gotten the information I need elsewhere. I'm looking to download docs on programming Win32/64 in C. I have Open Watcom C 2.0 but need to look for a 64-bit version: the last time I looked, it was experimental.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 1 of 19, by Start me up

User metadata
Rank Newbie
Rank
Newbie

Hi Harry Potter,
are you looking for documentation about the win32 API or about a 64 bit version of Open Watcom?

The main source for documentation about the win32 API is here: https://learn.microsoft.com/

However, it is pretty hard to browse this website if you are looking for a general overview. For example if you like to know how to interact with files (open a file, read a file, write to a file, close a file) then finding the right links to click on to get to the relevant articles is difficult. At least in my opinion.

A different approach would be to use the program "Dependency Walker" to check which functions a certain dll exports. For example if you check the exports of kernel32.dll you will find functions like "CreateFileA", "CreateFileW" and "CloseFile". If you have found a function that might suit what you need, then you can use a search engine to search for "CreateFileW function" as an example. You will probably get the article about this function on learn.microsoft.com as one of the first search results. When reading the article you will figure out that this function is for creating new files and also for opening existing files.

When working with old operating systems this documentation is rather unreliable. For example the article about the CreateFileW-function states, that this function was introduced with Windows XP and Windows Server 2003. However, this is not true. The function existed long before.

When you need documentation offline then learn.microsoft.com isn't so good either. The website allows exporting as pdf but it's a mess. It will create one pdf for one function. Or one pdf with many functions. But you can't download a chm file with articles, subarticles, categories and so on. But I guess that this type of documentation also exists from the old days when the Internet wasn't as popular as it is today.

Another approach is to explain your goal to chat.qwen.ai. Qwen will output some code that goes in the general direction. The code is usually full of bugs, but you will see which functions Qwen uses to reach the goal. So you can get a clearer picture about how to get there. However, then it is up to you to read the documentation about these functions.

Qwen might be convincing with it's words but has no problem with lying and making stuff up, presenting direct quotes from the official documentation which can not be found if someone looks them up. So be careful when using Qwen or similar programs which claim to be intelligent.

To use Qwen you need to register an account with an email address that works at least once for the activation. Besides of the email address it's free of charge.

Reply 2 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I can use searches by category. Does the link specify them? BTW, I'm looking for legacy and more recent 32-bit systems. I don't think I need 64-bit yet. BTW, the comment about 64-bit was to ask if a 64-bit system of Open Watcom exists and is stable.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 3 of 19, by davidrg

User metadata
Rank Member
Rank
Member

I don't know about 64bit Open Watcom, but the Visual C++ compiler has been free for about 20 years either as part of the Platform SDK or the free version of Visual Studio - that covers the entire history of 64bit support including the never intentionally released early 64bit builds of Windows XP for the Alpha architecture. Plus there is LLVM/Clang and GCC.

Online Win32 documentation is available at https://learn.microsoft.com/en-us/windows/win32/. If you want offline documentation, it came with releases of Visual C++ or Visual Studio at least as late as 2003 or 2005, but thats really only of use if you're targeting Vintage Windows.

If you are planning on targeting vintage Windows, I fairly routinely query the documentation in Visual C++ 2.0, 4.0, 6.0 and sometimes 2002 when I need to know just which versions of Windows support what APIs as the documentation doesn't always say and, in the case of the online stuff, it is almost always wrong when it does.

Reply 4 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Thank you. I downloaded it. 😀 I believe I have a Win98 version as an ISO on my computer. Will it work on Win11/64? I have DOSBox-X, and while it seems to have Win98SE support, I didn't implement it.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 5 of 19, by wbahnassi

User metadata
Rank Oldbie
Rank
Oldbie

The MSDN library CDs were IMO the best organization of Win32 documentation: Programming guides and reference sections for each area of the OS. Indexed and searchable with examples. Win32 API hasn't changed tremendously since Win95.. There are newer super-crappy APIs that snuck in with Windows 8 and onwards (WinRT..etc), but it's better to assume they don't exist.

Turbo XT 12MHz, 8-bit VGA, Dual 360K drives
Intel 386 DX-33, Speedstar 24X, SB 1.5, 1x CD
Intel 486 DX2-66, CL5428 VLB, SBPro 2, 2x CD
Intel Pentium 90, Matrox Millenium 2, SB16, 4x CD
HP Z400, Xeon 3.46GHz, YMF-744, Voodoo3, RTX2080Ti

Reply 6 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Thank you. Where can I get the CDs?

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 7 of 19, by bakemono

User metadata
Rank Oldbie
Rank
Oldbie

There is an offline reference as a Windows help file called WIN32.HLP. It's from the 95/NT era, so it's fairly useful as long as you're writing 32-bit code. Unfortunately it doesn't cover multimedia or other specialized APIs. You might need to grab winhlp32.exe to be able to read it on new-fangled Windows.

BTW, a lot of old programming books are a dime a dozen now because they are considered obsolete.

GBAJAM 2024 submission on itch: https://90soft90.itch.io/wreckage

Reply 8 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Thank you. I remember hearing about and trying these before, but I don't think I still have these files. Where can I find them?

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 9 of 19, by davidrg

User metadata
Rank Member
Rank
Member
Harry Potter wrote on 2025-11-06, 12:24:

Thank you. Where can I get the CDs?

Legally? MSDN Library CDs (and IIRC 90s era Win32 SDKs of the sort that included WIN32.HLP) were never free, so your only options are:

  • A second-hand retail copy of Visual C++ or Visual Studio which will include some particular version of the MSDN Library. Retail is important as the various MSDN branded CDs (both the library CDs, and the product CDs like Windows, Visual C++, SDKs, etc) on their own don't come with a license or any sort of right to use even if they come with a product key - you can only legally use these CDs if you've got an MSDN/Visual Studio subscription of the appropriate tier, or if they came in the box with some product.
  • An MSDN/Visual Studio Subscription. With one of those you can just download this stuff straight from Microsoft including older versions of Visual C++.

If you don't care about doing it legally, then I'm sure it's all available from the usual places but I believe providing links or suggesting particular locations would be against forum rules.

The Programming Windows books by Charles Petzold are pretty good too - not a replacement for API documentation, but depending on what you're doing they may be an easier source of some information.

Reply 10 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I think I know where I can get a copy. Thank you. BTW, would a Win98 ISO work on Win11/64?

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 11 of 19, by davidrg

User metadata
Rank Member
Rank
Member

Work in what way?

You could make a Win98 ISO from a Win98 CD with something like Alcohol 120%, and you could store a Win98 ISO as a file on a Win11/64 PC same as any other file. You should be able to mount the ISO as a virtual CD drive to access its contents (or just open it with 7zip as though it were an archive). You could use a Win98 ISO to install Windows 98 in a Hypervisor (VirtualBox, VMWare) or emulator (86box)...

Reply 12 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I'm wondering if I can use it and read its files under Win11/64. A short while ago, I downloaded an ISO of it. What program can I use to mount .iso files as CD drives on my system? I have Daemon Tools on a Win98 computer. Is it available on modern systems?

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 13 of 19, by davidrg

User metadata
Rank Member
Rank
Member

On windows 11 you should just be able to double-click the ISO to have it mounted and opened - Daemon Tools is effectively built-in now.

Reply 14 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Thank you. I'd better try that soon.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 15 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Would it also work on Win7/64? I have such a laptop at a day program.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 16 of 19, by davidrg

User metadata
Rank Member
Rank
Member

Don't remember, but I suspect the feature was new in Windows 10. If it doesn't work on Windows 7, just use 7zip - as all you're doing is fetching files out of the ISO 7zip will do the job just fine.

Reply 17 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I have 7Zip. Thank you.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 18 of 19, by Ringding

User metadata
Rank Member
Rank
Member

There is also this (CHM version of win32.hlp), which might be useful to some:

Reply 19 of 19, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I just downloaded it. Thank you. 😀

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community