Hallo,
ich wollte auf Grund einer Vorlage (http://dotnet-snippets.de/dns/c-frei...en-SID642.aspx) ein kleines Programm zusammenbasteln. Ich nutze zur Entwicklung Microsoft Visual C# 2008 Express Edition. Problem: Typen wie ManagementScope oder Object query sind unbekannt.
Ich bin ziemlicher Anfänger was C# und seine Klassen etc. angeht. Deswegen kanns auch ganz gut sein, dass ich hier einfach Mist gebaut hab. Hier der bisherige Code:
ich wollte auf Grund einer Vorlage (http://dotnet-snippets.de/dns/c-frei...en-SID642.aspx) ein kleines Programm zusammenbasteln. Ich nutze zur Entwicklung Microsoft Visual C# 2008 Express Edition. Problem: Typen wie ManagementScope oder Object query sind unbekannt.
Ich bin ziemlicher Anfänger was C# und seine Klassen etc. angeht. Deswegen kanns auch ganz gut sein, dass ich hier einfach Mist gebaut hab. Hier der bisherige Code:
Code:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Management; namespace WindowsFormsApplication1 { public partial class frmMain : Form { public frmMain() { InitializeComponent(); } class ShareLister { public List<ManagementObject> ListShares(string computername, string username, string password) { List<ManagementObject> Shares = new List<ManagementObject>(); if (computername != string.Empty) { ManagementScope managementScope1 = new ManagementScope((@"\\" + computername + @"\root\cimv2")); managementScope1.Options.Username = username; managementScope1.Options.Password = password; managementScope1.Options.EnablePrivileges = true; ObjectQuery objectQuery1 = new ObjectQuery("SELECT * FROM Win32_Share"); ManagementObjectSearcher managementObjectSearcher1 = new ManagementObjectSearcher(managementScope1, objectQuery1); using (ManagementObjectCollection.ManagementObjectEnumerator managementObjectEnumerator1 = managementObjectSearcher1.Get().GetEnumerator()) { while (managementObjectEnumerator1.MoveNext()) { ManagementObject managementObject1 = ((ManagementObject)managementObjectEnumerator1.Current); Shares.Add(managementObject1); } } } return Shares; } } private void bsfAnzeigen_Click(object sender, EventArgs e) { string compName = tfComputername.Text; string userName = tfUsername.Text; string userPW = tfPassword.Text; if(!(compName.Length == 0 || userName.Length == 0 || userPW.Length == 0)){ ShareLister lister = new ShareLister(); List<ManagementObject> shares = lister.ListShares(compName, compName + userName, userPW); foreach (ManagementObject share in shares) { lstFreigaben.Items.Add(share["name"].ToString()); } } } } }
Comment