0
DiscoverAsync 메서드를 사용하려고하지만 몇 가지 문제가 있습니다. 이건 내 코드입니다 :Discoverer.DiscoverAsync는 e.Agent.Address로 "0.0.0.0"을 반환합니다.
private void button1_Click(object sender, EventArgs e)
{
asyncMethod();
}
private async void asyncMethod()
{
Discoverer disc = new Discoverer();
disc.AgentFound += DiscovererFound;
await disc.DiscoverAsync(VersionCode.V1, new IPEndPoint(new IPAddress(new byte[] { 192,168,1,255}), 161), new OctetString("public"), 6000);
}
private void DiscovererFound(object sender, AgentFoundEventArgs e)
{
Console.WriteLine(e.Agent + ":" + e.Variable.Data);
}
그리고 이것은 출력 :
0.0.0.0:0:RICOH Aficio MP C300SR 2.09/RICOH Network Printer C model/RICOH Network Scanner C model
0.0.0.0:0:RICOH Aficio MP 301 1.06/RICOH Network Printer C model/RICOH Network Scanner C model/RICOH Network Facsimile C model
0.0.0.0:0:RICOH Aficio MP 2851 1.01/RICOH Network Printer C model/RICOH Network Scanner C model
당신이 볼 수 있듯이, 오기 '에이전트 엔드 포인트로 "0.0.0.0:0"를 반환,하지만 난 내 코드를 생각한다 내가 연결된 3 대의 프린터의 ID를 발견하기 때문에 정확합니다. 필자는 10.0.0-beta1을 제외하고 여러 버전의 라이브러리를 테스트했습니다. 신청할 때 IP 주소가 필요합니다. 어떤 도움을 주셔서 감사합니다.
감사합니다.
PD : "IPAddress.Broadcast"또는 "255.255.255.255"로 소켓 예외가 발생하므로 "192.168.1.255"를 사용하고 있습니다.
당신에게 시험 9.0.7나요? 10.x는 현재로서는 사용되지 않습니다. –
예. 나는 9.0.7을 시도했다. 어떤 이유로 UWP에서 컴파일되지 않지만 해당 버전에서도 "0.0.0.0"을 얻습니다. –