亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? opcst_x.cpp

?? 使用OPCST開發(fā)的進程內(nèi)OPCDA服務(wù)器(C++Builder)
?? CPP
字號:
#include "opcst_x.h"
//////模擬應用環(huán)境
#include "stdio.h"

HINSTANCE hInstance;//模塊實例

SOPCRegisterInfo OPCRegInfo =	//OPC DA系統(tǒng)注冊表信息
{
	"OPC Server of Inprocess" ,
	"OPCDA.Inprocess(BCB)" ,

	{ 0x4dd3dd4e, 0xc9a7, 0x13a4, 
	{0xbe, 	0xf5, 	0x2d, 	0x0, 	0xda, 	0x20, 	0xdb,	0x5c} 
	}
	
};

SVendorInfo VendorInfo;		//OPC DA模塊供應商信息

SOPCServerInfo OPCServerInfo;	//OPC DA服務(wù)器參數(shù)設(shè)備


typedef union UVariant
{
	VARIANT_BOOL	bVar;
	SHORT			sVar;
	LONG			lVar;
	FLOAT			fVar;
}UVariant;


typedef struct SDeviceRecord
{
	unsigned	uDevID;
	VARTYPE		vtType;
	UVariant	vValue;
}SDeviceRecord;

#define BUF_SIZE 40
//模擬設(shè)備緩沖區(qū)

SDeviceRecord SimulatorBuf[BUF_SIZE];
int ii;

 void InitParm()
{
	VendorInfo. wBuildNumber= 12;
	sprintf(VendorInfo.VendorInfo64 , "OPCDA in process test");
	VendorInfo.wMajorVersion = 8;
	VendorInfo.wMinorVersion = 3;

	OPCServerInfo.cTagNameSeperator = '/';
	OPCServerInfo.dwForceRefresh_Band = 20;
	OPCServerInfo.uUpdateRate = 23;
}

void InitDeviceBuffer()
{
	memset(SimulatorBuf,0,BUF_SIZE*sizeof(SDeviceRecord));
	for(ii=0;ii<8;ii++)
	{
		SimulatorBuf[ii].uDevID = ii;
		SimulatorBuf[ii].vtType = VT_BOOL;
		SimulatorBuf[ii].vValue.bVar = 0;
	}
	for(ii=8;ii<16;ii++)
	{
		SimulatorBuf[ii].uDevID = ii;
		SimulatorBuf[ii].vtType = VT_I2;
		SimulatorBuf[ii].vValue.sVar = 0;
	}
	for(ii=16;ii<24;ii++)
	{
		SimulatorBuf[ii].uDevID = ii;
		SimulatorBuf[ii].vtType = VT_I4;
		SimulatorBuf[ii].vValue.lVar = 0;
	}
	for(ii=24;ii<32;ii++)
	{
		SimulatorBuf[ii].uDevID = ii;
		SimulatorBuf[ii].vtType = VT_R4;
		SimulatorBuf[ii].vValue.fVar = 0;
	}

	for(ii=32;ii<BUF_SIZE;ii++)
	{
		SimulatorBuf[ii].uDevID = ii;
		SimulatorBuf[ii].vtType = VT_R4;
		SimulatorBuf[ii].vValue.fVar = 0;
	}
	
	/* Seed the random-number generator with current time so that
    * the numbers will be different every time we run.
    */
	srand( (unsigned)time( NULL ) );
}


BYTE bRet_WR ;
BYTE bRet_RD;

bool WriteVariant(unsigned devid,VARIANT	*value)
{

	if (devid >=BUF_SIZE )
		return false;

	bRet_WR= 0;

	switch(value->vt)
	{
	case VT_BOOL:
		SimulatorBuf[devid].vValue.bVar = V_BOOL(value);
		break;
	case VT_I2:
		SimulatorBuf[devid].vValue.sVar = V_I2(value);
		break;
	case VT_I4:
		SimulatorBuf[devid].vValue.lVar = V_I4(value);
		break;
	case VT_R4:
		SimulatorBuf[devid].vValue.fVar = V_R4(value);
		break;
	default:
		bRet_WR = -1;
	}

	if(bRet_WR != 0)
	{
		LOGWRITE("Write variant 's ret != 0");
		return false;
	}
	else
		return true;
}



bool ReadVariant(
				 unsigned	devid,
				 VARIANT	*value, 
				 const VARTYPE vtype)
{
	
	if (devid >=BUF_SIZE )
		return false;
	

	bRet_RD= 0;
	
	switch(vtype)
	{
	case VT_BOOL:
		//SimulatorBuf[devid].vValue.bVar = rand()%2;
		V_BOOL(value) = SimulatorBuf[devid].vValue.bVar;
		break;
	case VT_I2:
		//SimulatorBuf[devid].vValue.sVar = rand() %1000;
		V_I2(value) = SimulatorBuf[devid].vValue.sVar;
		break;
	case VT_I4:
		//SimulatorBuf[devid].vValue.lVar = rand() %1000;
		V_I4(value) = SimulatorBuf[devid].vValue.lVar;
		break;
	case VT_R4:
                if (devid >=32 )
		SimulatorBuf[devid].vValue.fVar = (float)(( rand() % 1000) * 0.997);
		V_R4(value) = SimulatorBuf[devid].vValue.fVar;
		break;
	default:
		bRet_RD = -1;
	}
	if(bRet_RD != 0)
	{
		LOGWRITE("Read variant 's ret != 0");
		return false;
	}
	else
		return true;
}

void LoadDeviceTag()
{
	unsigned	uOPCID;//OPC DA服務(wù)器內(nèi)部ID號
	VARIANT		var;
	VariantInit(&var);

	double	dMaxVal = 20000.999;
	double  dMinVal = -10000.999;
	
	char	Buf[128];


	for(ii=0;ii<8;ii++)
	{
		sprintf(Buf ,"BoolTag/RW_TagName%d",ii );
		V_VT(&var) = VT_BOOL;
		V_BOOL(&var) = VARIANT_FALSE;
		AddOPCTag(&uOPCID ,	ii,	Buf,true, &var, 0,1) ;
	}

	for(ii=6;ii<16;ii++)
	{
		sprintf(Buf ,"ShortTag/RW_TagName%d",ii );
		V_VT(&var) = VT_I2;	
		V_I2(&var) = 120;
		AddOPCTag(&uOPCID ,	ii,	Buf,true, &var, dMinVal,dMaxVal) ;
	}

	for(ii=16;ii<24;ii++)
	{
		sprintf(Buf ,"LongTag/RW_TagName%d",ii );
		V_VT(&var) = VT_I4;	
		V_I4(&var) = 125;		
		AddOPCTag(&uOPCID ,	ii,	Buf,true, &var, dMinVal,dMaxVal) ;
	}

	for(ii=24;ii<32;ii++)
	{
		sprintf(Buf ,"FloatTag/RW_TagName%d",ii );
		V_VT(&var) = VT_R4;	
		V_R4(&var) = (float)18.34;		
		AddOPCTag(&uOPCID ,	ii,	Buf,true, &var, dMinVal,dMaxVal) ;
	}

	for(ii=32;ii<BUF_SIZE;ii++)
	{
		sprintf(Buf ,"FloatTag/R_TagName%d",ii );
		V_VT(&var) = VT_R4;	
		V_R4(&var) = (float)34.5656;		
		AddOPCTag(&uOPCID ,	ii,	Buf,false, &var, dMinVal,dMaxVal) ;
	}
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲人成精品久久久久久| 色94色欧美sute亚洲线路一ni | 一区二区免费看| 99久久精品国产观看| 综合激情网...| 97se亚洲国产综合自在线| 亚洲欧美一区二区三区极速播放| 99精品久久只有精品| 亚洲第一av色| 精品国产一区a| 成人av先锋影音| 一区二区三区 在线观看视频| 欧美日韩一区三区四区| 奇米在线7777在线精品| 久久欧美一区二区| 91丨porny丨户外露出| 亚洲国产精品麻豆| 精品福利一二区| 91视频xxxx| 日韩高清不卡一区| 国产欧美一区二区精品性| 91玉足脚交白嫩脚丫在线播放| 亚洲高清免费观看高清完整版在线观看| 欧美日韩午夜在线视频| 精品一区二区三区影院在线午夜| 亚洲国产精品成人综合| 欧美日韩午夜在线视频| 国产成人一区在线| 亚洲一区二区在线免费观看视频| 日韩精品在线一区二区| 99在线视频精品| 日韩av网站免费在线| 欧美国产欧美综合| 在线综合视频播放| 成人黄色小视频在线观看| 日本aⅴ亚洲精品中文乱码| 欧美韩国日本一区| 欧美剧情片在线观看| 成年人网站91| 美国欧美日韩国产在线播放| 亚洲乱码国产乱码精品精可以看| 91精品免费观看| 99久久精品99国产精品| 久久66热re国产| 亚洲第一会所有码转帖| 亚洲欧洲一区二区三区| 精品国产乱码久久久久久浪潮 | 一本大道久久a久久综合婷婷| 久久av老司机精品网站导航| 亚洲精选免费视频| 日本一区二区三区高清不卡| 欧美精品在线观看一区二区| 99精品在线免费| 国模无码大尺度一区二区三区| 亚洲成人一二三| 一区二区三区日本| 日本一区二区三区dvd视频在线| 欧美一卡二卡在线| 欧美精品视频www在线观看| 一本色道久久综合亚洲精品按摩| 精品影视av免费| 免费在线视频一区| 五月婷婷久久综合| 亚洲国产精品精华液网站| 亚洲婷婷综合色高清在线| 国产日韩在线不卡| 久久人人爽人人爽| 久久夜色精品国产欧美乱极品| 337p亚洲精品色噜噜噜| 欧美另类变人与禽xxxxx| 欧美日韩国产a| 欧美性生交片4| 色综合激情久久| 91福利在线免费观看| 色婷婷激情综合| 在线视频一区二区三区| 欧洲亚洲精品在线| 欧美色视频一区| 欧美亚洲国产一区二区三区| 在线观看网站黄不卡| 91成人看片片| 欧美视频一区在线| 欧美日韩国产一级二级| 欧美老女人在线| 91精品国产福利| 日韩美女视频在线| 久久久久久9999| 国产精品三级av| 国产精品久久久久aaaa樱花| 综合激情网...| 亚洲一区中文日韩| 日韩精品亚洲专区| 精品写真视频在线观看| 国产精品一区二区男女羞羞无遮挡| 国产精品一区二区三区四区| 成人午夜短视频| 色噜噜狠狠成人网p站| 欧美日韩国产综合草草| 欧美大片在线观看| 国产亚洲一区二区三区| 中文字幕一区二区三区在线不卡 | 久久老女人爱爱| 国产精品久线在线观看| 亚洲精品水蜜桃| 丝袜亚洲另类丝袜在线| 国产毛片精品一区| 91小宝寻花一区二区三区| 欧美日韩免费观看一区三区| 日韩精品一区二区三区在线观看 | 婷婷国产v国产偷v亚洲高清| 久久精品久久精品| 丁香婷婷综合色啪| 在线这里只有精品| 日韩欧美在线影院| 国产精品高清亚洲| 日本色综合中文字幕| 国产黄人亚洲片| 91国产成人在线| 精品福利在线导航| 亚洲男人的天堂网| 麻豆免费精品视频| 色综合久久久久久久久| 精品国产一区二区三区av性色| 中文字幕一区二区在线观看 | 中文字幕一区不卡| 日韩高清不卡在线| 99久久精品国产导航| 日韩欧美亚洲国产另类| 中文字幕亚洲一区二区va在线| 亚洲成人av电影| 北条麻妃国产九九精品视频| 欧美一区二区三区婷婷月色| 中文字幕 久热精品 视频在线| 肉色丝袜一区二区| 97久久久精品综合88久久| 欧美精品一区二区三区高清aⅴ| 亚洲精品国产无天堂网2021| 国产精品一区在线观看你懂的| 在线观看91精品国产麻豆| 国产精品夫妻自拍| 国产一区高清在线| 丁香一区二区三区| 欧美精品一区二区久久婷婷| 婷婷久久综合九色综合伊人色| 99久久免费精品| 久久久久久久久久美女| 免费人成在线不卡| 在线视频欧美精品| 综合激情网...| www.欧美日韩国产在线| 久久久综合九色合综国产精品| 丝袜亚洲精品中文字幕一区| 在线观看一区二区视频| 亚洲桃色在线一区| 成人av网址在线观看| 国产三级三级三级精品8ⅰ区| 久久99久久久欧美国产| 欧美肥妇毛茸茸| 亚洲第一激情av| 欧美吻胸吃奶大尺度电影| 亚洲欧美日韩电影| 91在线云播放| 亚洲欧美日韩国产综合| 91亚洲精华国产精华精华液| 国产精品二区一区二区aⅴ污介绍| 高清av一区二区| 国产午夜精品福利| 国产精品一区二区无线| 国产日本欧美一区二区| 成人午夜视频免费看| 国产精品久久久久久久久免费桃花| 国产盗摄女厕一区二区三区 | 欧美激情一区二区三区在线| 国产一区二区三区蝌蚪| 久久综合久色欧美综合狠狠| 国产一区二区导航在线播放| 精品精品欲导航| 国产在线乱码一区二区三区| xfplay精品久久| 成人激情校园春色| 亚洲日本免费电影| 欧美在线观看一二区| 亚洲丶国产丶欧美一区二区三区| 欧美日韩一级黄| 日韩不卡一区二区| 精品国产网站在线观看| 国产不卡视频一区| 成人免费小视频| 色噜噜狠狠色综合中国| 丝袜美腿亚洲一区| 精品粉嫩超白一线天av| 岛国av在线一区| 亚洲男人天堂av网| 欧美日韩国产天堂| 精品亚洲国产成人av制服丝袜 | 国产无人区一区二区三区| caoporm超碰国产精品| 一区二区三区免费观看| 欧美一区二区私人影院日本| 国产激情偷乱视频一区二区三区|