資源簡介
連接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測試工具\OPCli
?????文件????????7913??2013-01-18?15:08??OPC測試工具\OPCli
?????文件???????18184??2013-02-02?11:54??OPC測試工具\OPCli
?????文件????????1005??2013-01-18?15:08??OPC測試工具\OPCli
?????文件???????18184??2013-02-02?11:54??OPC測試工具\OPCli
?????文件????????1022??2013-02-02?11:54??OPC測試工具\OPCli
?????文件???????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個文件信息
評論
共有 條評論