Windows CDROM 弹出

2023-12-31

有谁知道在 Windows 2000 或更高版本上以编程方式关闭 CD 托盘的方法吗? 打开 CD 托盘存在,但我似乎无法关闭它,尤其是在 W2k 下。

如果可能的话,我特别寻找一种从批处理文件中执行此操作的方法,但 API 调用也可以。


我有点喜欢使用 DeviceIOControl,因为它使我能够弹出任何类型的可移动驱动器(例如 USB 和闪存盘以及 CD 托盘)。使用 DeviceIOControl 正确弹出磁盘的 Da codez 是(只需添加适当的错误处理):

bool ejectDisk(TCHAR driveLetter)
{
  TCHAR tmp[10];
  _stprintf(tmp, _T("\\\\.\\%c:"), driveLetter);
  HANDLE handle = CreateFile(tmp, GENERIC_READ, FILE_SHARE_WRITE, 0, OPEN_EXISTING, 0, 0);
  DWORD bytes = 0;
  DeviceIoControl(handle, FSCTL_LOCK_VOLUME, 0, 0, 0, 0, &bytes, 0);
  DeviceIoControl(handle, FSCTL_DISMOUNT_VOLUME, 0, 0, 0, 0, &bytes, 0);
  DeviceIoControl(handle, IOCTL_STORAGE_EJECT_MEDIA, 0, 0, 0, 0, &bytes, 0);
  CloseHandle(handle);
  return true;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows CDROM 弹出 的相关文章

  • 如何拥有程序执行时间的控制台?

    我正在尝试编写一个在控制台或 GUI 模式下工作的程序 具体取决于执行参数 我已经成功编写了以下示例代码 using System using System Collections Generic using System Linq usi
  • 如何仅回显“开”或“关”文本?

    大家都知道 在 Windows 命令文件中 cmd echo on echo off 启用和禁用回显 但是如何仅回显文本 on 或文本 off IE 如何发送文本 on off to stdout 目标系统 Windows XP 那么在 D
  • 如何使用 cython 编译扩展?

    我正在尝试从示例页面编译一个简单的 cython 扩展here http docs cython org src userguide tutorial html在我安装了 Python 2 6 64 位版本的 Windows 7 64 位计
  • NSIS获取参数

    to get n 0值作为字符串 不需要选项 传递给安装程序 我不太明白这个函数的工作原理是什么 GetParameters input none output top of stack replaces with e g whatever
  • 批处理文件 - 读取特定行,并将该行中的特定字符串保存为变量

    有没有办法让 for f 循环 或其他任何东西 读取特定行 这是我到目前为止的代码 它读取每一行的第一个单词 echo off set file readtest txt for f tokens 1 delims A in file do
  • 如何在Windows上安装Xlib(eclipse、c语言)

    好的 我需要使用它进行图形编程 GUI cs 349 uwaterloo 第一次作业 我在谷歌搜索结果中看到随机的 Xlib h 和 Xutil h 文件 但它没有在哪里说明我如何从某个网站安装或下载 Xlib 我什至尝试将 Xlib h
  • 在结构内创建结构

    我正在努力将在 Visual c 6 0 中创建的旧 C windows 驱动程序项目导入到 Visual Studio 2012 中 定义结构的方式导致 vs2012 中出现错误 typedef struct LINK Link HAND
  • 如何在以管理员身份运行模式下部署应用程序?

    如何部署应用程序 使其需要管理员权限 而无需最终用户手动执行此操作 我使用 Delphi 2009 来构建该应用程序 您可以使用以下命令通知 Windows 您的应用程序需要以管理员身份运行requestedExecutionLevel应用
  • 如何通过批处理脚本检查进程是否正在运行

    如何检查应用程序是否正在从批处理 以及 cmd 文件运行 如果程序已经在运行 我不需要启动另一个实例 我无法更改应用程序以使其仅作为单个实例 该应用程序还可以以任何用户身份运行 我想到的另一种可能性 不需要保存文件 灵感来自于使用grep
  • Windows 中的 JNA:使用 Windows 作业自动终止子进程

    我需要在 Windows 中的 java 应用程序中启动一个子进程 最终可以通过任务管理器杀死 终止我的 java 应用程序 因此 我需要将此子进程与父进程 链接 如果父进程终止 则两者都会终止 在 Windows API 中我们有创建作业
  • 当前有哪些 USB 设备(友好名称)连接到 PC?

    我可以获得当前连接到计算机的设备列表吗 我检查了this https stackoverflow com q 3331043 75500 and this https stackoverflow com questions 3685615
  • 无法在 Eclipse 中运行 SDL 程序,但可以在 Windows 资源管理器中运行

    我已经安装并设置了 SDL 并设法获得了一个要构建的教程示例 教程代码来自http zamma co uk setup sdl2 eclipse windows http zamma co uk setup sdl2 eclipse win
  • 如何使用Powershell变量打开Edge?

    我已经尝试过以下方法 edge New Object com microsoft edge application edge visible true edge FullScreen true 但我收到错误 New Object Retri
  • 是否可以编写一个在另一个 Windows 应用程序中选择文本时收到通知的 Windows 应用程序?

    我很好奇是否可以编写一个程序来监视我的文本选择 一种可能的用途是编写一个与编辑器 IDE 无关的代码格式化程序 应用程序 服务 P 启动并以某种方式挂接到窗口中 以便在任何窗口中选择文本时收到通知 启动其他一些应用程序 A 用户选择 A 中
  • 将spark.local.dir设置为不同的驱动器

    我正在尝试在 Windows 10 上设置独立 Spark 我想设置spark local dir to D spark tmp tmp 目前它似乎正在使用C Users
  • 我可以保存控制台窗口的缓冲区或内容以供将来使用吗?

    我对控制台应用程序很感兴趣 只是想知道 保存控制台窗口的当前缓冲区以供以后使用并提供某种历史导航功能的最佳方法是什么 我知道 Diagnostics 命名空间提供了读取标准输出的能力 但这只是在您重定向它的情况下进行的 所以基本上您必须在新
  • Windows - 启动时自动启动特定应用程序

    在 Windows 操作系统中开发信息亭应用程序 当机器启动时 必须依次发生 3 件事 Node js 服务器启动 包含 Web 应用程序的浏览器以 kiosk 模式启动 另一个客户端应用程序启动 是否有一个实用程序可以轻松完成此操作 或者
  • 在 Windows 中使用脚本添加代理设置例外

    我使用的是 Windows 7 并且有一个在启动时初始化的代理配置 每次重新启动电脑时 我都必须重新打开代理设置并手动添加新的代理例外 IP 地址 例如每次重新启动时 www google com www yahoo com www fac
  • Inno Setup中如何处理带空格的路径?

    我想允许带有空格的路径 例如program files 当使用 Inno Setup 安装我的程序时 但是 带有空格的路径会让我安装的服务崩溃 Inno 安装文件如下所示 Setup AppName Demo DefaultDirName
  • 30000 毫秒后量角器超时

    我正在尝试将量角器 e2e 测试集成到我的巡航控制中 我正在使用以下测试规范 describe index function var ptor it should have a title function browser get http

随机推荐

  • C# - 向 IP 地址和端口发送和接收 TCP/IP 消息

    我有以下代码将 TCP IP 消息发送到特定的 IP 地址和端口 public bool sendTCPMessage string ip address string port string transaction id string c
  • 使用 python 进行二维 FFT 会导致频率略有偏移

    我知道关于在 python 中使用快速傅立叶变换 FFT 方法存在几个问题 但不幸的是它们都不能帮助我解决我的问题 我想使用python计算给定二维信号f的快速傅里叶变换 即f x y Python 文档帮助很大 解决了 FFT 带来的一些
  • 在 Retrofit 中序列化查询参数

    想象一下以下请求 POST recipes create void createRecipe Query recipe Recipe recipe Callback
  • SQLAlchemy 可以与 Google Cloud SQL 一起使用吗?

    我查看了 Google Cloud SQL 的文档和各种搜索 但我不知道是否可以将 SQLAlchemy 与 Google Cloud SQL 一起使用 如果可以 连接 URI 应该是什么 我正在寻找使用 Flask SQLAlchemy
  • 编写包含字符串并可在常量中使用的 Rust 结构类型

    我正在开始使用 Rust 我想要一个包含 除其他外 字符串的结构 derive Clone Debug struct Foo string field str won t compile but suppose String or Box
  • 两个key可以指向memcache中的同一个数据吗

    我正在使用 PHP 和 Memcache 我想要多个键指向相同的数据 datawallright memcache gt get wads wall gt getIdwall 这就是我检索数据的方式 如果没有数据 我会进行一些 MySql
  • 使用php杀死Linux中的用户进程

    我正在尝试编写一个 php 脚本来杀死 redhat 机器中的用户 我知道有可能 而且非常不安全 让apache能够以root身份执行操作 但我需要能够从网页上杀死任何用户 是否有人有任何好的工作脚本或给我指出一个地方找到更多信息吗 我可以
  • 如何绕过字符串在文本文件中执行加法

    我将 csv 文件转换为文本文件 我想在文本文件中添加数字 当我运行我的代码时出现错误 假设错误代码我想编写逻辑来绕过我的字符串并仅添加数值 import csv csv file Annual Budget csv txt file an
  • CWnd::CreateDlgIndirect 离开 m_hWnd==NULL

    我正在处理的对话框未显示 使用 CWnd CreateDlgIndirect LPCDLGTEMPLATE lpDialogTemplate CWnd pParentWnd HINSTANCE hInst 对 CreateDlgIndire
  • Ubuntu - Anaconda 2020.02 - 命名空间 Gtk 不可用

    这是在 Ubuntu 16 04 LTS 上 我遇到了与这个问题相同的问题 ValueError 命名空间 Gtk 不可用 https stackoverflow com questions 56823857 valueerror name
  • 保持帐户登录

    我们有一个内部控制面板 办公室的所有员工都全天登录 包括客户服务 我希望对其进行设置 以便在会话到期之前让您保持登录状态 1 小时 如何在 PHP ini 中更改此设置 在我明白将保持会话打开直到浏览器窗口关闭之前我做了一个更改 但它没有坚
  • 使用 plt.plot 与 plt.hist 的彩色图像直方图差异 [Python]

    我使用下面的代码使用两种方法生成彩色图像的直方图 方法一 使用cv2 calcHist 函数计算频率 使用 plt plot 生成频率的线图 方法 2 使用plt hist 函数计算并生成直方图 我添加了bin 250以便2个直方图一致 观
  • 如何在 Python 中将 Excel 工作表另存为 HTML?

    我正在与这个图书馆合作XlsxWriter https pypi python org pypi XlsxWriter 我打开了一本工作簿并在其中写了一些内容 考虑官方的例子 http xlsxwriter readthedocs org
  • ERR_BAD_SSL_CLIENT_AUTH_CERT

    我们在浏览大多数 https 网站时开始遇到问题 示例包括 https technet microsoft com https technet microsoft com https mail google com https mail g
  • 是否可以使用 addEventListener 调用类方法?

    只是我一直想知道的事情 在第二个参数中 addEventListener方法 您可以调用 自定义 类方法 而不是函数吗 即像下面这样的东西会起作用吗 var object new ClassName document getElementB
  • UIScrollView 滚动时重绘内容?

    我知道有一个属性或方法可以使scrollview uiview 在滚动时调用drawRect 方法 由于性能原因 默认情况下处于禁用状态 但我需要启用它 我不记得该方法的名称 因此我无法寻找它 有人知道我在寻找什么吗 提前致谢 我建议使用s
  • QTreeWidget 内的 QT 可点击小部件(可能是按钮)?

    我有一个基本上是 QTreeWidget 的表 我想在其中放置一个可点击的小部件 可能是一个按钮 每行都是一个 QTreeWidgetItem 但我不知道如何使用 QTreeWidgetItem setData 添加按钮 这是对 Qt 文档
  • 无法从 C# 中的 .Net 套接字正确读取数据

    我有一个使用套接字通信的 C 客户端和服务器类 服务器看起来像这样 public class AsyncTcpServer private Socket server socket private Socket client socket
  • iPhone OpenGL ES 不正确的 alpha 混合

    我在 iPhone 上使用 openGL ES 时遇到了不正确的 alpha 混合结果的问题 这是我创建纹理对象的代码 glGenTextures 1 tex name glBindTexture GL TEXTURE 2D tex nam
  • Windows CDROM 弹出

    有谁知道在 Windows 2000 或更高版本上以编程方式关闭 CD 托盘的方法吗 打开 CD 托盘存在 但我似乎无法关闭它 尤其是在 W2k 下 如果可能的话 我特别寻找一种从批处理文件中执行此操作的方法 但 API 调用也可以 我有点