_Printers = new PrintServer().GetPrintQueues(new[] {
EnumeratedPrintQueueTypes.Local, EnumeratedPrintQueueTypes.Connections});
上述代碼允許我獲取可供我打印的打印機列表。一個打印機描述的是如下:C#瞭解打印機的主機名和IPAddress
\\EYZR370\HP Color LaserJet 2605dn,HP Universal Printing PCL 6 (v5.1),
現在我試圖找到打印機的IP地址,使用以下方法手動:
1 - >進入控制面板
2- >查看設備和打印機
3->上於HP Color LaserJet 2605dn和選擇打印機屬性
4->右鍵單擊選擇端口選項卡,查看IP地址
現在,它顯示了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];
}
我可以看到有對hostEntry.AddressList
6點的數據,但他們都不匹配192.157.6.8
做了另一個測試?
我也試過了,'Aliases'返回null –
你試過解決'EYZR370'到IP地址嗎? – Howie
請查看我的更新後的問題,看看我是否使用正確的方式查找IP地址 –