Domanda

Utilizzando biblioteca WMI di Windows', come posso espellere CD ROM montato in una specifica unità CD / DVD?

Chiedo fonti di documenti WMI o esempi da quando sto usando biblioteca wmi.py su Python.

Sarebbe bello se il computer soddisfa soluzione di Windows più recenti di Windows 2000 e che hanno a più CD-ROM. (Cioè devo D: F: azionamenti ed entrambi sono unità CD-ROM potrei voler espulsione cd in F:.. In particolare)

cercato in rete ma non riusciva a trovare nulla di rilevante. L'ultima soluzione deve essere avere 3rd binari di partito e l'esecuzione dal guscio.

È stato utile?

Soluzione

È possibile utilizzare ctypes .

import ctypes

ctypes.windll.WINMM.mciSendStringW(u"set cdaudio door open", None, 0, None)

UPDATE:

Se si dispone di più di un disco, è possibile utilizzare per comando di apertura per inizializzare un dispositivo specifico prima di chiamare la funzione di cui sopra. Per esempio (non testato).

ctypes.windll.WINMM.mciSendStringW(u"open D: type cdaudio alias d_drive", None, 0, None)
ctypes.windll.WINMM.mciSendStringW(u"set d_drive door open", None, 0, None)

Inoltre, consultare la documentazione su come controllare i valori di ritorno

Altri suggerimenti

WMI sé non fornisce i mezzi per espellere unità CD / DVD. Ci sono altre soluzioni, però, che coinvolgono utilizzando le funzioni API di Windows, ad esempio:

  • Uso della href="http://msdn.microsoft.com/en-us/library/ms709492.aspx" rel="nofollow noreferrer"> mciSendString funzione

    mciSendString("open f: type cdaudio alias cdrom", null, 0, IntPtr.Zero);
    mciSendString("set cdrom door open", null, 0, IntPtr.Zero);
    
  • Uso della href="http://msdn.microsoft.com/en-us/library/aa363216.aspx" rel="nofollow noreferrer"> DeviceIOControl funzione qui .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top