代码之家  ›  专栏  ›  技术社区  ›  ahmet alp balkan

如何使用WMI和Python弹出CD?

  •  7
  • ahmet alp balkan  · 技术社区  · 16 年前

    因为我在Python上使用WMI.py库,所以我要求从WMI文档或示例中获取源代码。

    这将是伟大的,如果解决方案满足Windows计算机比Windows 2000更新,并有多个光盘(i、 我有D:F:驱动器,两个都是CD-ROM驱动器。我可能想弹出F:格式的cd。)

    在网上搜索,但找不到任何相关的东西。最后一个解决方案必须是使用第三方二进制文件并从shell执行。

    2 回复  |  直到 7 年前
        1
  •  12
  •   Garett    16 年前

    你可以用 ctypes .

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

    更新:

    open

    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)
    

    另外,请参见 documentation 关于如何检查返回值

        2
  •  2
  •   Community Mohan Dere    9 年前

    WMI本身不提供弹出CD/DVD驱动器的方法。不过,还有其他解决方案,包括使用Windows API函数,例如:

    • 使用 mciSendString 功能。虽然不能帮助您编写Python代码,但下面的C示例可以帮助您理解:

      mciSendString("open f: type cdaudio alias cdrom", null, 0, IntPtr.Zero);
      mciSendString("set cdrom door open", null, 0, IntPtr.Zero);
      
    • 使用 DeviceIOControl here .