2016-12-19 4 views
0

Прежде всего, извиняйтесь, если это не имеет смысла и/или оно уже было задано (хотя поиск ничего не нашел).Приложение C#: Получить сетевые ресурсы на другом компьютере

У меня есть приложение, которое устанавливает принтеры по умолчанию для наших конечных пользователей, но я хотел бы расширить его, сделав его также доступным для установки принтеров с удаленной машины.

Что мне нужно сделать, так это на Form_Load заполнить Combo Box со всеми сетевыми ресурсами с сервера печати.

Я снимаю в темноте, и мне интересно, может ли кто-нибудь пролить некоторый свет.

ответ

0

Я считаю, что это работает.

Это не мой код изначально, но я не могу вспомнить, откуда он взялся.

using System.Management; 

private void btnGetPrinters_Click(object sender, EventArgs e) { 

    // Use the ObjectQuery to get the list of configured printers. 

    ObjectQuery oquery = new ObjectQuery("SELECT * FROM Win32_Printer"); 

    ManagementObjectSearcher mosearcher = new ManagementObjectSearcher(oquery); 

    ManagementObjectCollection moc = mosearcher.Get(); 

    foreach (ManagementObject mo in moc) 
    { 
     PropertyDataCollection pdc = mo.Properties; 

     foreach (System.Management.PropertyData pd in pdc) 
     { 
      if ((bool)mo["Network"]) 
      { 
       cmbPrinters.Items.Add(mo[pd.Name]); 
      } 
     } 
    } 
} 
Смежные вопросы