C++ C++;:远程休眠电脑
如何从另一台PC休眠在局域网上运行Windows 7或8的Windows计算机?C++ C++;:远程休眠电脑,c++,windows,winapi,shutdown,C++,Windows,Winapi,Shutdown,如何从另一台PC休眠在局域网上运行Windows 7或8的Windows计算机? 有WinAPI函数吗?或者我必须发送特殊的魔法包或类似的东西吗? 我只知道PsShutdown.exe能够做到这一点(据称,我还没有尝试过) 我不想使用第三方库,也不想在本应处于休眠状态的计算机上运行服务。我想使用现有的机制 我还想知道是否需要更改目标计算机上的特定设置。 我不确定这是否重要,但shutdown/s/m\\ComputerName在我的目标电脑上不起作用。TechNet文档描述了对远程电脑使用shu
有WinAPI函数吗?或者我必须发送特殊的魔法包或类似的东西吗?
我只知道PsShutdown.exe能够做到这一点(据称,我还没有尝试过) 我不想使用第三方库,也不想在本应处于休眠状态的计算机上运行服务。我想使用现有的机制 我还想知道是否需要更改目标计算机上的特定设置。 我不确定这是否重要,但
shutdown/s/m\\ComputerName
在我的目标电脑上不起作用。TechNet文档描述了对远程电脑使用shutdown.exe
命令的要求
据我所知,远程休眠机器的唯一方法是使用与
psshutdown
相同的方法:将可执行文件复制到远程机器,并将其作为系统服务安装
API允许您指定目标计算机,您可以使用它返回的句柄调用CreateService,然后启动服务。服务完成工作后可以删除自身。您误解了两件事。首先,我想使用一个API函数,COM或类似的,其次我想休眠我的目标PC,而不是关闭或重新启动它。shutdown.exe的问题是,它是一个专用的exe,这意味着性能非常差,尤其是在重复运行时,而且对远程PC几乎没有控制,也没有休眠。API函数看起来像是API
shutdown.exe
基于此,因为它有许多相同的标志。我想你会发现上面列出的要求适用于你是直接使用API还是通过shutdown.exe
(我真的不理解你的“疯狂糟糕的性能”评论——你打算多久做一次?)。可能无法使用标准API远程休眠,这可能是shutdown.exe
不提供此选项的原因PsShutdown
似乎通过管理共享将程序复制到远程计算机上,至少这是从PsShutdown
页面链接的Windows it Pro文章中描述的。现在,我只需要运行shutdown.exe一次,但我仍然认为这是糟糕的编程风格,而这并不是我想要的。我如何重现“通过管理共享将程序复制到远程计算机”,然后我如何告诉计算机运行该程序?我不知道,也许Windows it Pro文章解释了它是如何完成的。