国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

IOPCBrowseServerAddressSpace的使用(vc)

2019-11-18 11:14:28
字體:
來源:轉載
供稿:網友

  在制作 OPC Client 的時候通常需要瀏覽OPC Serve的所有已經定義的item名稱(當然OPC Server必須支持這個選項),假如用VC的話就要使用到IOPCBrowseServerAddressSpace接口,那么,下面是提取item目錄結構的一個自制的遞歸函數。
  
  void TryBrowseBranch(IOPCBrowseServerAddressSpace *pBSAS, LPCWSTR lpPRestr,LPCWSTR lpcw)
  {
  HRESULT r1;
  OPCNAMESPACETYPE onst;
  LPWSTR pItemID;
  WCHAR s,*lp;
  IEnumString *pEnum = 0;
  
  char szBuf[40];
  long nPos = 1;
  HRESULT r2 = S_OK;
  LPOLESTR pStr;
  ULONG actual;
  
  lp = WSTRFromSBCS("%ls,%ls",pIMalloc);
  // 向lpcw節點的枝葉改變位置
  pBSAS->ChangeBrowsePosition(OPC_BROWSE_DOWN,lpcw);
  r1 = pBSAS->BrowSEOPCItemIDs(OPC_FLAT,&s,VT_EMPTY,0,&pEnum);
  pBSAS->QueryOrganization(&onst);
  
  // 提取該節點下的所有枝葉
  while((r2 = pEnum->Next(1, &pStr, &actual)) == S_OK)
  {
  printf("%ls%ls--%ls/n",lpprestr,lpcw, pStr);
  wprintf(lpprestr,lp,lpcw,pStr);
  if(onst == OPC_BRANCH)
  TryBrowseBranch(pBSAS,lpprestr,pStr);
  }
  // pBSAS->ChangeBrowsePosition(OPC_BROWSE_DOWN,
  // printf("OPC_NS_HIERARCHIAL 含有枝干");
  // get firset item
  pIMalloc->Free(lp);
  pIMalloc->Free(pStr);
  pEnum->Release();
  // 回到名叫lpcw的主干位置
  pBSAS->ChangeBrowsePosition(OPC_BROWSE_UP,lpcw);
  }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吴桥县| 宁武县| 绥德县| 盐津县| 怀集县| 嘉义县| 襄城县| 南丹县| 肥东县| 前郭尔| 淮安市| 墨脱县| 蒲江县| 临海市| 大化| 龙山县| 安吉县| 丰镇市| 板桥市| 浏阳市| 雷波县| 宝鸡市| 张家界市| 石景山区| 许昌市| 黄骅市| 法库县| 炎陵县| 内黄县| 和硕县| 吴堡县| 霞浦县| 大洼县| 龙陵县| 阜阳市| 沽源县| 湘潭市| 唐河县| 电白县| 凌海市| 寿宁县|