Hi again,I'm not sure if I can solve your problem. But a few things.
Since you have good reasons for sticking with IBM Com port drivers, you might want to double-check that your drivers are recent ones. Especially if you're running Warp 3 with a Fixpak above FP40, Fixpaks above 40 didn't include Device Driver Updates, as these were spun off into a separate Fixpak just for device drivers. Old drivers were (are) buggy, so best to check the revision. To do this, go to a command prompt and type:
bldlevel c:\os2\boot\com.sys
Make sure it is Revision / Version 9.28 or higher. Also, check the Date on the file - should be 2-9-98 or newer. Also check the date on VCOM.SYS (it will be in the \os2\mdos directory) - it should be 12-04-98 or later. Earlier versions of COM.SYS and VCOM.SYS can be buggy.
For identifying which process is grabbing the Com port, have you tried Theseus? It will let you see what is accessing a particular device driver. It can also give you other info about memory usage. Grab a copy from IBM at:
ftp://service.boulder.ibm.com/ps/products/os2/fixes/v4warp/theseus3/thes3003.exe
Run that in its own directory (it is a self-extracting ZIP). You'll then need to add to the config.sys:
device=x:\xxxx\theseus5.sys
Where x: is the drive you put it on, and xxxx is the directory.
Then start up theseus3.exe
Under the System menu, you'll find a General System sub-menu, with Device Drivers as an option.
Find the Com port you're having trouble with and double click on the Strategy option, it will tell you which process currently has that device.
Also, on the main Process Hierarchy screen, you can double-click on a process, and under the Handles section it will usually show you if a process is using a particular device (in this case, \dev\comX - where X is the port in use).
I don't know if this will help, but it might at least identify what's holding the Com port.