[mythtv] Ticket #6822: win32 patch to display drive letter instead of the devicePath when having multiple optical drives

Nigel Pearson nigel at ind.tansu.com.au
Thu Aug 13 09:06:47 UTC 2009


>>> 2009-08-08 17:50:26.328 Found CD Drive : E:\
>>> 2009-08-08 17:50:26.359 Found CD Drive : F:\
>>> 2009-08-08 17:50:26.359 Initial device list: E:\ (E:\), F:\ (F:\)
>>
>> The standard code outputs m_RealDevice (m_DeviceModel).
>
> Which in my case on Windows is like above: E:\ (E:\), F:\ (F:\)  
> even without anything patched IIRC.

I suspect that must be your reimplemented class.
('Found CD' isn't in the current code)


...
> I seem to be stuck with rewriting the deviceStatus() function ATM  
> as it seems Windows does not have a simple function to return the  
> status of a drive.

Yes, it was always going to be very different to Unix.


You might need to do like we did on Mac OS X,
which basically interfaces with a system daemon
to use it's low-level monitoring code.

Maybe one of these Windows Services will do it for you?
IMAPI CD-Burning COM Service
Logical Disk Manager
Plug and Play
Removable Storage
Universal Plug and Play Device Host




>> 2009-08-13 14:48:24.703 Creating MediaMonitor, SendEvents=false
>> 2009-08-13 14:48:24.703 IgnoreDevices=
>> 2009-08-13 14:48:24.734 Error. Couldn't create MythMediaDevice.
>> 2009-08-13 14:48:24.734 Starting MediaMonitor
>> 2009-08-13 14:48:24.750 Executing '/bin/mount A:\'
>> 2009-08-13 14:48:24.750 performMountCmd() attempted to find mounted
>> media, but failed?
>
> Is this on Windows?

Yep. The monitor starts, gets its list of devices,
fails to get anything back from MythCDROM::get() for D:\,
creates a MythHDD for A:\.

The code then tries to work out what A:\ is
by listing the files in it. It calls isMounted(),
which calls findMountPath(), which fails,
so it tries to mount the drive, which fails.


> If there is some interest I can submit my in some places hacky code  
> as a patch either to this list or to trac, just let me know.

Maybe email it to me?

--
Nigel Pearson, nigel at ind.tansu.com.au|"Gentlemen!              |
Telstra Net. Eng., Sydney, Australia | You can't fight in here-|
Office: 9202 3900    Fax:  9212 6348 |   this is the war room!"|
Mobile: 0408 664435  Home: 9792 6998 |     Dr Strangelove      |



More information about the mythtv-dev mailing list