Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net Windows-将HDD置于待机和睡眠模式_.net_Winapi - Fatal编程技术网

.net Windows-将HDD置于待机和睡眠模式

.net Windows-将HDD置于待机和睡眠模式,.net,winapi,.net,Winapi,如何在Windows中以编程方式将硬盘驱动器置于待机或休眠模式 Windows API或任何.Net库是否提供了实现这一点的函数?(我知道我可能不应该干扰Windows的电源管理机制,但这不是我打算在生产环境中使用的,它是一些算法的概念证明)。我找到了一个名为“RevosReep”的程序警告:音乐 我不能告诉你们它是否有效[我并没有足够的勇气去尝试:)]但我确实尝试过用反编译。你瞧,它起了作用。(我找不到这东西是根据什么授权的,所以要小心。) 在不知道我在看什么的情况下,这些片段似乎是最相关的。

如何在Windows中以编程方式将硬盘驱动器置于待机或休眠模式

Windows API或任何.Net库是否提供了实现这一点的函数?(我知道我可能不应该干扰Windows的电源管理机制,但这不是我打算在生产环境中使用的,它是一些算法的概念证明)。

我找到了一个名为“RevosReep”的程序警告:音乐

我不能告诉你们它是否有效[我并没有足够的勇气去尝试:)]但我确实尝试过用反编译。你瞧,它起了作用。(我找不到这东西是根据什么授权的,所以要小心。)

在不知道我在看什么的情况下,这些片段似乎是最相关的。它们都使用windowsapi函数

“睡眠”驱动器:

“锁定”驱动器:

“停用”驱动器:

“将卷置于脱机状态”(?):

同样,我也不知道这是否有效,甚至不知道你在寻找什么。您可以尝试反编译它,并亲自查看所有代码

或者,这些api调用是否有帮助?

祝你好运

if (Environment.OSVersion.Version.Build > 0xa28)
{
    num2 = DeviceIoControl(this.hDevice[0], 0x4d02c, (void*) &_ata_pass_through_ex_with_buffer, 40, (void*) &_ata_pass_through_ex_with_buffer, 40, (uint modopt(IsLong)*) &num11, null);
}
else
{
    num2 = DeviceIoControl(this.hDevice[0], 0x4d028, (void*) &_ata_pass_through, 0x20c, (void*) &_ata_pass_through, 0x20c, (uint modopt(IsLong)*) &num11, null);
    //...
}
DeviceIoControl(hDevice[index], 0x90018, null, 0, null, 0, (uint modopt(IsLong)*) &num11, null);
DeviceIoControl(this.hDevice[0], 0x2d1080, null, 0, (void*) &_storage_device_number2, 12, (uint modopt(IsLong)*) &num8, null);
DeviceIoControl(this.hDevice[num3], 0x56c00c, null, 0, null, 0, (uint modopt(IsLong)*) &num11, null);