_Printers = new PrintServer().GetPrintQueues(new[] {
EnumeratedPrintQueueTypes.Local, EnumeratedPrintQueueTypes.Connections});
Приведенный выше код позволяет мне получить список принтеров, доступных для печати. Одно из описаний принтера приведено ниже:
\\EYZR370\HP Color LaserJet 2605dn,HP Universal Printing PCL 6 (v5.1),
Теперь я пытаюсь найти IP-адрес принтера вручную, используя следующий способ:
1 -> Перейдите на панель управления
2-> Просмотр устройств и принтеров
3-> Щелкните правой кнопкой мыши HP Color LaserJet 2605dn и выберите свойства принтера
4-> Выберите вкладку Порт, чтобы увидеть Айпи адрес
Теперь он показывает IP-адрес, например 192.157.6.8
Мне интересно, 192.157.6.8 == EYZR370?
Поэтому я пробую следующим образом:
string hostName = System.Net.Dns.GetHostEntry("192.157.6.8").HostName;
Удивительно, но hostName
имеет другое строковое значение, о котором я понятия не имею.
Может ли кто-нибудь на самом деле объяснить, что это все о моем случае?
Обновления:
Я сделал еще один тест, используя следующий способ
IPHostEntry hostEntry;
hostEntry = Dns.GetHostEntry("EYZR370");
//you might get more than one ip for a hostname since
//DNS supports more than one record
if (hostEntry.AddressList.Length > 0)
{
//var ip = hostEntry.AddressList[0];
}
Я вижу, что есть 6 данных для hostEntry.AddressList
, но ни одно из них не соответствует 192.157.6.8
?