Powershell komutu ile uzaktaki herhangi bir Windows yüklü bilgisayarda paylaşıma açılmış klasörleri görüntüleyebiliriz. Bunun için gerekli olan kod parçası.
[powershell]
Get-WmiObject -Class Win32_Share -ComputerName [Ip Adres veya bilgisayar adı]
[/powershell]
Aynı şekilde bu powershell komutunu C# ile çalıştırarak da bir arayüz üzerinden sonuçlar görüntülenebilir.
Bunun için gerekli olan C# kodu aşağıdadır.
Kod içerisinde kullanılan Shared isimli sınıfımızın kodu:
[csharp]
public class Share
{
public string ClientName { get; set; }
public string SharedFolder { get; set; }
}
[/csharp]
[csharp]
using (PowerShell powerShell = PowerShell.Create())
{
try
{
powerShell.AddScript($"Get-WmiObject -Class Win32_Share -ComputerName {dhcpServerClient.IpAddress}");
Collection<PSObject> psObjects = powerShell.Invoke();
foreach (PSObject psObject in psObjects)
{
if (psObject!=null)
{
Shared shared = new Shared();
shared.ClientName = dhcpServerClient.Name;
shared.SharedFolder = psObject.BaseObject.ToString();
shareds.Add(shared);
}
}
}
catch (Exception ex)
{
}
}
[/csharp]