是否可以使用 C# 以编程方式访问 RDC 机器目录

Posted

技术标签:

【中文标题】是否可以使用 C# 以编程方式访问 RDC 机器目录【英文标题】:Is it possible to access an RDC machine directory programmatically using C# 【发布时间】:2014-11-14 04:54:08 【问题描述】:

我有一个远程桌面连接到另一台机器,通过用户名和密码获得完全访问权限。有没有办法使用 C# 以编程方式读取 RDC 机器上的目录和文件?下面是我成功与 rdc 机器建立连接的代码,但我如何搜索特定目录?然后里面的文件。有什么建议???

    ConnectionOptions connOptions = new ConnectionOptions();
    connOptions.Username = @"Salman\test123.req";
    connOptions.Password = "Test123";

    var scope = new ManagementScope("\\\\" + "86.30.300.400" + "\\root\\cimv2", connOptions);

    scope.Connect();

    //Query system for Operating System information
    var query = new ObjectQuery("SELECT * FROM Win32_OperatingSystem");
    var searcher = new ManagementObjectSearcher(scope, query);

    ManagementObjectCollection queryCollection = searcher.Get();
    foreach (var m in queryCollection)
    
        // Display the remote computer information
        Console.WriteLine("Computer Name : 0", m["csname"]);
        Console.WriteLine("Windows Directory : 0", m["WindowsDirectory"]);
    

【问题讨论】:

【参考方案1】:

这是在 rdc 机器中搜索文件名的方法

ConnectionOptions connOptions = new ConnectionOptions();
    connOptions.Username = @"Salman\test123.req";
    connOptions.Password = "Test123";

    var scope = new ManagementScope("\\\\" + "86.30.300.400" + "\\root\\cimv2", connOptions);

    scope.Connect();

    var searchString = "serie_"+TextBox1.Text;
    var query = new ObjectQuery(@"SELECT FileName from Cim_DataFile where path = '\\www\\folder1\\folder2\\' and Drive='D:' and FileName Like '"+searchString+"'");
    var searcher = new ManagementObjectSearcher(scope,query);

    ManagementObjectCollection queryCollection = searcher.Get();


    foreach (var m in queryCollection)
    
        TextBox1.Text = "Found";
    

【讨论】:

以上是关于是否可以使用 C# 以编程方式访问 RDC 机器目录的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 c# 以编程方式将证书安装到本地机器存储中?

是否可以仅使用 C# 以编程方式生成 X509 证书?

如何以编程方式检测机器人

以编程方式构建访问查询

通过开放式办公室以编程方式创建 Word 文档

是否可以在 gmail.com 帐户中找到从 C# 以编程方式发送的电子邮件?