I just spent many hours researching a similar situation, so for others, I present a work-around.
I wanted to use the free Win 2k/NT/XP "io.dll" ring-0 driver from
http://geekhideout.com/iodll.shtml for fast parallel port access under windows. This may be similar to "giveio.dll" etc.
However, in Pelle's C, at link time it refused to natively link to the DLL because the exported functions do not contain a leading underscore. No combination of declaration or function type would enable linking, even using .DEF files. Furthermore, POLIB would give no error when making a .lib file from this library, however a verbose link would show that zero functions were being found in the generated .lib file. It would have been nice if POLIB had an \ADDUND switch, but there is another way...
The author of io.dll above gives a C/C++ method which bypasses this by using LoadLibrary at run-time. Check it out.