• 大小: 20.18MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-06-20
  • 语言: 其他
  • 标签: OPC  

资源简介

连接OPC服务,客户端测试软件。输入opc服务器地址或自动选择本机opc服务测试。

资源截图

代码片段和文件信息

// OPClink.cpp: implementation of the COPClink class.
//
//////////////////////////////////////////////////////////////////////

#include “stdafx.h“
#include “OPClink.h“
#include se.h>
#include 
#include se.h>
#include “include\\opc.h“
#include “include\\opc_i.c“
#include “include\\opcerrors.h“

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

#define OPC_SERVER_NAME L“OPCServer.WinCC“///需要修改
#define COMPUTER L“jujumao“//机器名

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

COPClink::COPClink()
{
Num=1;//需要修改
pIOPCServer = NULL;
pIOPCItemMgt = NULL;
}

COPClink::~COPClink()
{

}

IOPCServer* COPClink::InstantiateServer()
{
CLSID CLSID_OPCServer;
HRESULT hr;

// get the CLSID from the OPC Server Name:
hr = CLSIDFromString(OPC_SERVER_NAME &CLSID_OPCServer);
  //ASSERT(!FAILED(hr));
if(FAILED(hr))
{
AfxMessageBox(“连接OPC服务器失败!“);
return NULL;
}

LONG cmq = 1; // nbr of class instance to create.
MULTI_QI queue[1] =
{{&IID_IOPCServer
NULL
0}};


//Server info:
COSERVERINFO CoServerInfo ={0COMPUTERNULL0}; 

// create an instance of the IOPCServer
hr = CoCreateInstanceEx(CLSID_OPCServer NULLCLSCTX_SERVER
&CoServerInfo cmq queue);//&CoServerInfo

if(FAILED(hr))
{
AfxMessageBox(“连接OPC服务器失败!“);
return NULL;
}

// return a pointer to the IOPCServer interface:
return(IOPCServer*) queue[0].pItf;

}

BOOL COPClink::AddTheGroup()
{
DWORD dwUpdateRate = 100;
OPCHANDLE hClientGroup = 0;

// Add an OPC group and get a pointer to the IUnknown I/F:
    HRESULT hr = pIOPCServer->AddGroup(L“NewGroup“TRUEdwUpdateRatehClientGroup
000&hServerGroup&dwUpdateRateIID_IOPCItemMgt(IUnknown**) &pIOPCItemMgt);
if(FAILED(hr))
{
AfxMessageBox(“创建OPC组失败!“);
return FALSE;
}
return TRUE;
}

BOOL COPClink::AddTheItem()
{
HRESULT hr;

// Array of items to add:
OPCITEMDEF* ItemArray=new OPCITEMDEF[Num];
for(int i=0;i {
ItemArray[i].szAccessPath=L““;
ItemArray[i].szItemID=Item[i];
ItemArray[i].bActive=TRUE;
ItemArray[i].hClient=i+1;
ItemArray[i].dwBlobSize=0;
ItemArray[i].pBlob=NULL;
ItemArray[i].vtRequestedDataType=VT_R4;
ItemArray[i].wReserved=0;
}

//Add Result:
OPCITEMRESULT* pAddResult=NULL;
HRESULT* pErrors = NULL;
// Add an Item to the previous Group:
hr = pIOPCItemMgt->AddItems(Num ItemArray &pAddResult &pErrors);
if(hr!=S_OK)
{
AfxMessageBox(“创顶时连接服务器失败!“);
delete[] ItemArray;
return FALSE;
}
for(i=0;i {
if(pErrors[i]!=S_OK)
{
CString str=“创建项“;
str=+Item[i];str+=“失败!“;
AfxMessageBox(str);
CoTaskMemFree(pAddResult->pBlob);
CoTaskMemFree(pAddResult);
pAddResult = NULL;
CoTaskMemFree(pErrors);
pErrors = NULL

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-03-18 08:47  OPC测试工具\
     文件      192512  2013-01-18 15:08  OPC测试工具\KOCRDK.DLL
     文件      192512  2013-04-23 19:29  OPC测试工具\KOCTool.exe
     文件      233505  2013-04-23 19:29  OPC测试工具\KOCVB.exe
     文件      122880  2013-04-23 19:30  OPC测试工具\KOCVC.exe
     文件      120320  2013-04-23 19:30  OPC测试工具\KOCVC7.exe
     目录           0  2013-03-18 13:31  OPC测试工具\OPC\
     文件       73728  2013-01-18 15:08  OPC测试工具\opccomn_ps.dll
     文件      151552  2013-04-23 19:30  OPC测试工具\OPCENUM.EXE
     文件      118784  2013-01-18 15:08  OPC测试工具\opchda_ps.dll
     目录           0  2013-02-25 08:57  OPC测试工具\OPClink\
     文件        7913  2013-01-18 15:08  OPC测试工具\OPClink.cpp
     文件       18184  2013-02-02 11:54  OPC测试工具\OPClink1.cpp
     文件        1005  2013-01-18 15:08  OPC测试工具\OPClink1.h
     文件       18184  2013-02-02 11:54  OPC测试工具\OPClink\OPClink1.cpp
     文件        1022  2013-02-02 11:54  OPC测试工具\OPClink\OPClink1.h
     文件       77824  2013-01-18 15:08  OPC测试工具\OPCPROXY.DLL
     目录           0  2013-04-05 16:12  OPC测试工具\opctest测试通讯程序\
     目录           0  2013-03-14 13:18  OPC测试工具\opctest测试通讯程序\Debug\
     文件       20136  2013-02-22 17:29  OPC测试工具\opctest测试通讯程序\Debug\MainFrm.obj
     文件           0  2013-02-22 17:29  OPC测试工具\opctest测试通讯程序\Debug\MainFrm.sbr
     文件       90719  2012-05-29 02:16  OPC测试工具\opctest测试通讯程序\Debug\msado15.tlh
     文件       76664  2012-05-29 02:16  OPC测试工具\opctest测试通讯程序\Debug\msado15.tli
     文件      134171  2013-02-22 17:29  OPC测试工具\opctest测试通讯程序\Debug\StdAfx.obj
     文件     1774910  2013-02-22 17:29  OPC测试工具\opctest测试通讯程序\Debug\StdAfx.sbr
     文件     3900416  2013-02-22 17:29  OPC测试工具\opctest测试通讯程序\Debug\test.bsc
     文件      208971  2013-04-23 19:30  OPC测试工具\opctest测试通讯程序\Debug\test.exe
     文件      700416  2013-03-14 13:18  OPC测试工具\opctest测试通讯程序\Debug\test.ilk
     文件       23719  2013-03-13 18:09  OPC测试工具\opctest测试通讯程序\Debug\test.obj
     文件     9774508  2013-02-22 17:29  OPC测试工具\opctest测试通讯程序\Debug\test.pch
     文件      566272  2013-03-14 13:18  OPC测试工具\opctest测试通讯程序\Debug\test.pdb
............此处省略72个文件信息

评论

共有 条评论