public IPHostEntry EndGetHostEntry(IAsyncResult AsyncResult) { AsyncResult aResult = (AsyncResult)AsyncResult; if (aResult.AsyncDelegate is GetHostEntryDelegate) { GetHostEntryDelegate g = (GetHostEntryDelegate)aResult.AsyncDelegate; return g.EndInvoke(AsyncResult); } if (aResult.AsyncDelegate is GetHostEntryViaIPDelegate) { GetHostEntryViaIPDelegate g = (GetHostEntryViaIPDelegate)aResult.AsyncDelegate; return g.EndInvoke(AsyncResult); } return null; }