Tore,
I know I have not been able to find a workable way, and I have been more or less looking for several years, but I had assumed that hidden somewhere in the Windows API ( much of which remains a mystery to me) there was a function call that would return something like 1 for dot matrix, 2 for inkjet , and 3 for laser. I find it strange that there is not some way to do this.
A problem is a problem only as long as it has a possible solution. Lacking that, it becomes a FACT!