How to get the manufacturer name and model of the CD-ROM drive?

I need to get the manufacturer name and model of the CD-ROM drive, something like the string which appears in Start | Settings | Control Panel | System | CD-ROM drive in Windows 95. I tried with MCI, but it returns an useless 'CD audio' string, not the information I need. I would need to get such an information under every version of Windows (Windows 3.x, Windows 95 and, if possible, Windows NT): is there any API call? I use Borland Pascal for Windows 7.0.
mauromolAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

JohnnyBoyCommented:
Have a look at the "GetSystemInfo" function, it may help...
0
mauromolAuthor Commented:
To JohnnyBoy: where can I find GetSystemInfo function?
0
mauromolAuthor Commented:
Adjusted points to 150
0
Cloud Class® Course: Microsoft Windows 7 Basic

This introductory course to Windows 7 environment will teach you about working with the Windows operating system. You will learn about basic functions including start menu; the desktop; managing files, folders, and libraries.

borovCommented:
Pretending to answer, but not sure...

Try to enumerate all the keys under HKEY_LOCAL_MACHINE\Enum\SCSI\ key in the registry (this is true for Win95, cant try it on NT). Each key here must have "Class=CDROM" value and "DeviceDesc" contains exact CDROM manufacturer name. Also you can find there many other useful information.

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
mauromolAuthor Commented:
Thank you for your answer. Anyway, there are some problems:
- how can I get the same information under Windows 3.x? Isn't there any way to do it through Windows? Do I have to use MSCDEX and Assembly?
- is there any way to access the information contained in the registry with a 16-bit compiler? I use Borland Pascal for Windows 7.0, which is designed for Windows 3.1: how can I get this
information from the registry under Windows 95?
- browsing my registry through REGEDIT, I noticed that there are old devices listed, too: I mean, once I installed an IDE CD-ROM drive to test, and today I found its information in the registry
even if I had already uninstalled it. Is there any way to recognize a currently installed device from an old one? I thought of this: check how many CD-ROM drives are installed, get their letters and then compare these letters with the device descriptions (CurrentLetterAssignment key), but I realized that old devices have their old assigned letter value, too...

Just for my curiosity: why both SCSI and IDE CD-ROM drives are listed under "SCSI" folder in the registry?
0
borovCommented:
Sorry, I've missed that you doing it with 16-bit Pascal. I don't know it very well. About access to registry: I am sure that there is way to call 32 functions from 16-bit program (called 'thunking' or something like that). Nothing to say about Win31.

Now I see that using registry is not very good way to get info you need. It was just first thought. I suppose that there must be special functions to query current hardware configuration. I will try to see...

Has ExpertsExchange a way to reject answered question? I did not earn any points - the answer is too vague.

About IDE CDROM in SCSI section: its myst for me, too. May be it was done to simplify classification of devices?

0
mauromolAuthor Commented:
Yes, I heard about "thunking", but which function do I have to access? In which DLL is it? What's
its index?

About your question to reject answered questions: I don't fully understand what you are asking: I
can only tell you that I have graded your answer as "Average"...

Thanks again and let me know if you discover something more!
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Development

From novice to tech pro — start learning today.