In your Virtual Cd driver you should call IoCreateDevice function
(DeviceType = FILE_DEVICE_CD_ROM) to create CD-ROM device and realize
dispatch procedures for IRP with major code IRP_MJ_CREATE, IRP_MJ_CLOSE,
IRP_MJ_READ, IRP_MJ_DEVICE_CONTROL.
In dispatch procedure for IRP_MJ_READ you should read data from CD image
file and copy this data to user buffer.
In dispatch procedure for IRP_MJ_DEVICE_CONTROL you should handle CD-ROM's
IOCTL (like IOCTL_CDROM_GET_DRIVE_GEOMETRY, IOCTL_CDROM_READ_TOC,
IOCTL_STORAGE_CHECK_VERIFY, ...)
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.