C# 查看是否有足够的磁盘空间安装在共享文件夹中

C# 查看是否有足够的磁盘空间安装在共享文件夹中,c#,winapi,diskspace,C#,Winapi,Diskspace,我需要能够在局域网内的计算机上的共享文件夹中安装程序 首先,我必须找出计算机上共享的文件夹,然后检查是否有足够的磁盘空间来继续安装 这是我的方法 public static void FindShares() { try { ConnectionOptions options = new ConnectionOptions(); options.Authentication = AuthenticationL

我需要能够在局域网内的计算机上的共享文件夹中安装程序

首先,我必须找出计算机上共享的文件夹,然后检查是否有足够的磁盘空间来继续安装

这是我的方法

public static void FindShares()
    {
        try
        {
            ConnectionOptions options = new ConnectionOptions();
            options.Authentication = AuthenticationLevel.PacketPrivacy;
            options.Impersonation = ImpersonationLevel.Impersonate;
            string path = "\\\\COMPUTERNAME\\root\\cimv2";
            ManagementScope scope = new ManagementScope(path, options);

            scope.Connect();
            ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_Share");

            ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
            ManagementObjectCollection queryCollection = searcher.Get();

            foreach (ManagementObject m in queryCollection)
            {
                // Display shared folder information

                Console.WriteLine("Share Name : {0}", m["Name"]);
                Console.WriteLine("Share Path : {0}", m["Path"]);
                Console.WriteLine("AccessMask: {0}", m["AccessMask"]);
                Console.WriteLine("Type: {0}", m["Type"]);
                Console.WriteLine("Status : {0}", m["Status"]);
                Console.WriteLine();
            }

            string line;
            line = Console.ReadLine();
        }
        catch (Exception e)
        {
            MessageBox.Show(e.Message);
        }
    }
当我运行此命令时,会出现以下错误: 访问被拒绝。(HRESULT的例外:0x80070005(E_访问被拒绝))

我想我必须以不同的方式设置我的傲慢,但我不知道如何设置


感谢您的帮助。

您的访问被拒绝是因为WMI提供程序在连接到远程计算机时正在模拟您,而您不是远程计算机上的管理员

您正在运行此代码的电脑,以及您试图访问的电脑是否是Windows域的一部分

您的用户帐户是否直接或间接是目标计算机上本地administrators组的成员