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ı.
Get-WmiObject -Class Win32_Share -ComputerName [Ip Adres veya bilgisayar adı]
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:
public class Share { public string ClientName { get; set; } public string SharedFolder { get; set; } }
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) { } }