控制传输
ept->Target=TGT_DEVICE;//方向到设备
ept->ReqType=REQ_VENDOR;//厂商请求
ept->Direction=DIR_TO_DEVICE;//方向到设备
//读取是用REQ_FROM_DEVICE
ept->ReqCode=0xB2;//请求码
ept->Value=0;
ept->Index=0;
PUCHAR buf=new UCHAR[3];
ZeroMemory(buf,3);
LONG buflen=3;
buf[0]=0xB2;
buf[1]=1;
buf[2]=2;
ept->XferData(buf,buflen);
delete [] buf;
线程
进程定义:进程是在当前操作系统下,被加载到内存的,正在运行的应用程序的实例。
线程定义:线程是指进程内的一个执行单元,也是进程内的可掉度实体。
生命周期:线程的启动和终止过程。
线程的操作
if(LoopThread1)
{
Looping1=false;
LoopThread1=NULL;
}
else
{
Looping1=true;
LoopThread1=AfxBeginThread(LoopFunction1,this);//开启线程
}
UINT LoopFunction1(LPVOID params)
{
CMy01Dlg *dlg=(CMy01Dlg *) params;
LONG buflen=2;
ept->Target=TGT_DEVICE;
ept->ReqType=REQ_VENDOR;
ept->Direction=DIR_TO_DEVICE;
ept->ReqCode=0xB2;
ept->Value=0;
ept->Index=0;
PUCHAR buf=new UCHAR[3];
for(;dlg->Looping1;)
{
ZeroMemory(buf,3);
buf[0]=0xB2;
buf[1]=1;
buf[2]=2;
ept->XferData(buf,buflen);
}
return true;//返回值为真,将线程关闭
} |