The article might be great (didn't look into it) but your code (app) has serious bugs. I've got quite a few bugs after the first run itself. But didn't try to run/test again because the first run wiped out the files in a partition where I tried, already.
I have notified the site administrator (he must have contacted you) and have posted a thread regarding in the feedback forum. When you upload your new re-written code (now it is unavailable due to the said fact) please make sure that you have tested the code throughly and there is no serious bugs in it.
Personally, I think the problem that lim chang yong posted was from the version of the 16-bit DLL, which was named Disk16.dll. In thunking mechanism document of Microsoft, they said that, their 16-bit Resource compile in BINW16 of Platform SDK could mark the version of 16-bit DLL with 4.0. However, up to now, I've not found this compiler yet. In my opinion, we can solve competely this problem if we get the so-called 16-bit Resource compiler from WINW16 of Microsoft Platform SDK.
I got a problem when compilling .asm file, which was automatically created by thunk compiler thunk.exe, to 16-bit obj. The compiler always generated these errors:
error A2004: symbol type conflict
These errors didn't occured when I compiled in 32-bit mode. My command line in 16-bit mode is:
ml /DIS_16 /c /W3 /Zi /nologo /Fo Disk16.obj Disk.asm
I think there was no problem with .asm file because it was automatically created.
Please give me some suggestions to solve this problem.
Thank you very much.