} // end Trace public void ActivateSession(bool sync) { System.Console.WriteLine(); if (sync) { int result = this.m_daSession.Connect(true, true, new ExecutionOptions()); if (ResultCode.FAILED(result)) { System.Console.WriteLine(" Session activate failed!"); } } // end if else { m_daSession.Connect(true, true, m_executionOptions); m_executionOptions.ExecutionContext++; } // end else } // end ActivateSession
} // end Terminate public int InitializeDaObjects() { int connectResult = (int)EnumResultCode.E_FAIL; m_executionOptions = new ExecutionOptions(); m_executionOptions.ExecutionType = EnumExecutionType.ASYNCHRONOUS; m_executionOptions.ExecutionContext = 0; m_itemList = new MyDaItem[6]; m_itemIds = new string[] { "maths.sin", "time.local.second", "increment.UI1 array", "increment.BSTR", "secure.I2", "IOP.static.I1 array" }; try { // TODO add your server URL here // this is the server url for Softing OPCToolbox Demo Server // first choice is COM-DA string url = "opcda:///Softing.OPCToolboxDemo_ServerDA.1/{2E565242-B238-11D3-842D-0008C779D775}"; //uncomment if you need an XML-DA access // string url = "http://localhost:8079/OPC/DA"; m_daSession = new MyDaSession(url); if (!m_daSession.Valid) { return(connectResult); } m_daSubscription = new MyDaSubscription(1000, m_daSession); if (!m_daSubscription.Valid) { return(connectResult); } m_daItem1 = new MyDaItem("maths.sin", m_daSubscription); if (!m_daItem1.Valid) { return(connectResult); } m_itemList[0] = m_daItem1; m_daItem2 = new MyDaItem("time.local.second", m_daSubscription); if (!m_daItem2.Valid) { return(connectResult); } m_itemList[1] = m_daItem2; m_daItem3 = new MyDaItem("increment.UI1 array", m_daSubscription); if (!m_daItem3.Valid) { return(connectResult); } m_itemList[2] = m_daItem3; m_daItem4 = new MyDaItem("increment.BSTR", m_daSubscription); if (!m_daItem4.Valid) { return(connectResult); } m_itemList[3] = m_daItem4; m_daItem5 = new MyDaItem("secure.I2", m_daSubscription); if (!m_daItem5.Valid) { return(connectResult); } m_itemList[4] = m_daItem5; m_daItem6 = new MyDaItem("IOP.static.I1 array", m_daSubscription); if (!m_daItem6.Valid) { return(connectResult); } m_itemList[5] = m_daItem6; connectResult = m_daSession.Connect(true, false, m_executionOptions); } catch (Exception exc) { GetApplication().Trace( EnumTraceLevel.ERR, EnumTraceGroup.USER, "OpcClient::InitializaDaObjects", exc.ToString()); } // end try...catch return(connectResult); } // end InitializeDaObjects