Dongle access should be made using a VxD in Windows 95. A dongle VxD calls ACQUIRE_RESOURCE with ACQUIRE_STEAL. If this call fails, the dongle VxD can try again later or return failure to its client. A dongle VxD accessing a port only causes a warning message if the user has set VPD to "warn" in the Control Panel. While it owns a port, the dongle VxD should fail RESOURCE_STEAL_REQUEST calls.
A dongle VxD should call RELEASE_RESOURCE as soon as it is done accessing the dongle. That is, it should not hold the acquire handle for the duration of its client application and release to RESOURCE_STEAL_REQUEST calls during idle periods. The reason for this is to enable more than two VxD clients to share a port. For example, imagine a system with the following devices installed: LPT1, dongle, Xircom adapter, and printer. The Xircom adapter and LPT.VXD could not share LPT1 while the dongle VxD is holding an acquire handle, because there can only be one current owner and one waiting owner at a time per resource (not including VMs).