private static void OnStartAdviseComplete(IAsyncResult ar) { try { DdeClient client = (DdeClient)ar.AsyncState; client.EndStartAdvise(ar); Console.WriteLine("OnStartAdviseComplete"); } catch (Exception e) { Console.WriteLine("OnStartAdviseComplete: " + e.Message); } }
public void Test_EndStartAdvise() { using var server = new TestServer(ServiceName); server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using var client = new DdeClient(ServiceName, TopicName); client.Connect(); var ar = client.BeginStartAdvise(ItemName, 1, true, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); client.EndStartAdvise(ar); }
public void Test_EndStartAdvise_After_Dispose() { using (var server = new TestServer(ServiceName)) { server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using (var client = new DdeClient(ServiceName, TopicName)) { client.Connect(); var ar = client.BeginStartAdvise(ItemName, 1, true, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); client.Dispose(); Assert.Throws<ObjectDisposedException>(() => client.EndStartAdvise(ar)); } } }