// OpenPipe.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<windows.h>
#include<cstdlib>
#include<iostream>
using namespace std;
HANDLE hPipe;
void OpenPipe()
{
hPipe = CreateFileA("\\\\.\\Pipe\\pipe_xg", GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if( INVALID_HANDLE_VALUE == hPipe)
{
cout<<"打开通道错误"<<endl;
return ;
}
BOOL bConnect = ConnectNamedPipe(hPipe,NULL);
if(!bConnect)
{
cout<<"连接管道错误"<<endl;
return ;
}
//CloseHandle(hPipe); // 关闭管道句柄
}
void WriteData(char* data)
{
DWORD WriteNum;
BOOL bWrite = WriteFile(hPipe,data,strlen(data), &WriteNum, NULL);
FlushFileBuffers(hPipe);
//DisconnectNamedPipe(hPipe);
if(bWrite)
{
}
else
{
}
}
#define WIDTH 6
#define HEIGHT 6
struct SPatch{
int row,col,cx,cy,width,height;//行,列,中心点横纵坐标,patch宽,高
int type,level;//pe图片类型,1是blur,2是noise,level是blur和noise的级别(取1,2,3,4)
float blurFeature[3];
float noiseFeature[3];
}imagePatch[WIDTH][HEIGHT];
//比如我定义这么一个结构体,我要是给数组循环赋值,我应该怎么做
//比如
int _tmain(int argc, _TCHAR* argv[])
{
#if 1
OpenPipe();
WriteData("111");
getchar();
WriteData("222");
getchar();
CloseHandle(hPipe);
for(int i=0;i<WIDTH;i++)
{
for(int j=0;j<HEIGHT;j++)
{
imagePatch[i][j].cx = 1000;
imagePatch[i][j].noiseFeature[0] = 1.9;
imagePatch[i][j].height = 1000;
}
}
#endif
return 0;
}