gpt4 book ai didi

c# - 如何在远程计算机上执行命令?

转载 作者:IT王子 更新时间:2023-10-29 04:33:57 27 4
gpt4 key购买 nike

我在服务器上有一个共享文件夹,我需要远程对一些文件执行命令。我怎么做?

需要在服务器上运行哪些服务才能使其正常工作?

一些细节:只能使用C#。服务器上不能安装任何东西。

最佳答案

另一个解决方案是使用 WMI.NET or Windows Management Instrumentation .

Using the .NET Framework namespace System.Management, you can automate administrative tasks using Windows Management Instrumentation (WMI).

代码示例

using System.Management;
...
var processToRun = new[] { "notepad.exe" };
var connection = new ConnectionOptions();
connection.Username = "username";
connection.Password = "password";
var wmiScope = new ManagementScope(String.Format("\\\\{0}\\root\\cimv2", REMOTE_COMPUTER_NAME), connection);
var wmiProcess = new ManagementClass(wmiScope, new ManagementPath("Win32_Process"), new ObjectGetOptions());
wmiProcess.InvokeMethod("Create", processToRun);

如果您在身份验证方面遇到问题,请检查 DCOM 配置。

  1. 在目标机器上,从命令提示符运行 dcomcnfg
  2. 展开 Component Services\Computers\My Computer\DCOM Config
  3. 找到使用 GUID 8BC3F05E-D86B-11D0-A075-00C04FB68820 标识的 Windows 管理指令(您可以在详细信息 View 中看到它)。
  4. 编辑属性,然后在权限选项卡下添加您尝试登录的用户名。
  5. 您可能需要重新启动服务或整个机器。

注意:用于远程进程的所有路径都必须是目标机器的本地路径。

关于c# - 如何在远程计算机上执行命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/428276/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com