1

First of all, I know that I cannot get a proper answer to my problem, but I am looking for ways to start debugging it and/or maybe check some Windows process on being stuck or running faulty.

I am developing an application that connects to a Smartcard printer over the ethernet. The thing is: I am using an SDK of the printers manufacturer and they seem to refuse to help solve my problem or simply don't know it better. (Printer: Zebra ZXP Series 3) The printer has inbuilt Smartcard encoders (for contact and contactless cards). After trying to connect to these encoders, my program (a simple call to a function of the SDK) throws everytime after rebooting my machine after the initial installation of the drivers a System.AccessViolation Exception.

I know that this problem is very specific on the driver and getting a solution to this may be impossible, but I am trying to gather information on how to analyze the issues that this exception creates.

The connection, of course, failed. But afterwards Windows starts to act strangely i.e. the Device Manager gets kinda corrupted: Trying to connect any device over USB will fail and the Device Manager will not twitch a single bit. If I try to deactivate any other driver in the Device Manager, he'll freeze and the mmc.exe will eat up all my CPU resources. (I excluded mmc.exe to have anything in common to my problem)

My assumption is, that the SDK calls a Windows function/service to connect to the device, but Windows fails to return from this function/service on a failed connection. I think so, since I cannot properly kill my program after this happens and have to kill it via Task Manager (The program keeps on running otherwise).

Also if I reboot the PC - Windows gets stuck at the shutting down screen. This also sparks my assumption that a Windows process won't end properly.

Now to my question: Is there any Windows service/process that involves in managing driver/device connections? Do you maybe know any Windows tools that may help in getting information about currently connected devices and error logs? Or simply does anyone know some ways to debug driver problems.

The generic get latest drivers did not help.

1
  • Does the printer manufacturer not give you source for a sample application that you should be able to compile and demo? And use as a starting point for your own code? Most SDKs include such a thing. Oct 4, 2014 at 21:40

1 Answer 1

1

After some fairly early phases of system startup, both the service manager process (services.exe) and the plug-and-play service (which lives in one of the svchost processes) are involved in starting and stopping drivers. This applies to drivers with a "Start" value of 2 or 3 in their registry entries.

Your "can't connect USB" issue issue sounds as if the suspect driver has not completed either a plug-and-play or power management sequence with the plug-and-play manager, thereby preventing it from recognizing any other new devices.

You can review plug-and-play events by perusing %windir%\inf\setupaup.dev.log .

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .