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

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

?? iomain.cpp

?? USB HID 控件,適用于DLEPHI及BCB
?? CPP
字號(hào):
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "IOMain.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "JvHidControllerClass"
#pragma resource "*.dfm"
TMainForm *MainForm;
//---------------------------------------------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormCreate(TObject *Sender)
{
  int I;
  AnsiString S;

  // place the SpeedButtons in an array for indexed access
  // mark them with their array index
  for(I = 0; I < 8; I++)
  {
    LEDs[I] = (TSpeedButton *) FindComponent(S.sprintf("LED%d", I));
    LEDs[I]->Tag = I;
  };
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::FormActivate(TObject *Sender)
{
  // the first OnDeviceChange could not access the controls
  // so it is repeated here
  UpdateControls();
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::UpdateControls(void)
{
  int I;
  AnsiString S;

  // OnDeviceChange happens before OnCreate so the LEDs are not assigned yet
  if(LEDs[0] != NULL)
  {
    // enable/disable the controls
    for(I = 0; I < 8; I++)
    {
      LEDs[I]->Enabled = (IOWarrior != NULL);
      if(IOWarrior == NULL)
        LEDs[I]->Down = false;
    }
    BlockingRead->Enabled = (IOWarrior != NULL);

    if(IOWarriorDetected != NULL)
      if(IOWarrior != NULL)
        IOWarriorDetected->Caption = "IO-Warrior is plugged in";
      else
        IOWarriorDetected->Caption = "No IO-Warrior is plugged in";
  }
}
//---------------------------------------------------------------------------

bool __stdcall FindIOWarrior(TJvHidDevice *HidDev)
{
  // the IO-Warrior shows up as two devices
  // we want access to the IO-Warrior device for the IO pins
  // the other one with a InputReportByteLength of 8 is for access to
  // the optional LCD module
  return (HidDev->Attributes.VendorID == cCodeMercenariesVID &&
    HidDev->Attributes.ProductID == cIOWarriorPID &&
    HidDev->Caps.InputReportByteLength == 5);
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::HidCtlDeviceChange(TObject *Sender)
{
  int I;
  unsigned int BytesWritten;

  // Free the device object if it has been unplugged
  if(IOWarrior != NULL && !IOWarrior->IsPluggedIn)
    FreeAndNil(&IOWarrior);

  // if no IO-Warrior in use yet then search for one
  if(IOWarrior == NULL)
    if(HidCtl->CheckOutByCallback(IOWarrior, FindIOWarrior))
    {
      // initialize the output report
      IOWarriorOutputReport.ReportID = 0;
      // the IO-Warrior LEDs use negative logic
      for(I = 0; I < 4; I++)
        IOWarriorOutputReport.IOBits[I] = 0xFF;
      // write the bits to the IO-Warrior to reset the LEDs
      IOWarrior->WriteFile(&IOWarriorOutputReport, sizeof(IOWarriorOutputReport), BytesWritten);
    }

  // update the controls on the form
  UpdateControls();
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::LEDClick(TObject *Sender)
{
  int LedIdx;
  unsigned int BytesWritten;

  // use the Tag assigned in FormCreate
  LedIdx = ((TSpeedButton *) Sender)->Tag;

  // translate SpeedButton state into correct bit in IOBits[3]
  // IO-Warrior uses negative logic
  if(LEDs[LedIdx]->Down)
    // set the bit to 0 to switch the LED on
    IOWarriorOutputReport.IOBits[cLEDByte] &= ~(1 << LedIdx);
  else
    // set the bit to 1 to switch the LED off
    IOWarriorOutputReport.IOBits[cLEDByte] |= (1 << LedIdx);

  // write the bits to the IO-Warrior
  IOWarrior->WriteFile(&IOWarriorOutputReport, sizeof(IOWarriorOutputReport), BytesWritten);
}
//---------------------------------------------------------------------------

char *OrdToBinary(unsigned char Value)
{
  int I;
  unsigned char B;
  char *P;
  static char Buffer[9];

  P = Buffer+7;
  B = Value;
  for(I = 0; I < 8; I++)
  {
    *P = '0' + (B & 0x1);
    P--;
    B >>= 1;
  }
  Buffer[8] = '\0';
  return (Buffer);
}

//---------------------------------------------------------------------------
void __fastcall TMainForm::BlockingReadClick(TObject *Sender)
{
  int I;
  unsigned int BytesRead;
  TIOWarriorIOReport IOWarriorInputReport;

  InputBits->Caption = "";
  if(IOWarrior->ReadFile(&IOWarriorInputReport, sizeof(IOWarriorInputReport), BytesRead))
    for(I = 0; I < 4; I++)
      InputBits->Caption = InputBits->Caption + OrdToBinary(IOWarriorInputReport.IOBits[I]);
}
//---------------------------------------------------------------------------

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人精品免费| 一区二区高清在线| 精品一区二区三区日韩| 欧美一区二区三区视频免费| 麻豆国产精品视频| 久久久久久久久久久久电影| 成人免费视频caoporn| 亚洲欧洲日韩女同| 欧美中文字幕久久 | 久久众筹精品私拍模特| 国产一区91精品张津瑜| 国产精品色噜噜| 91福利国产精品| 丝袜美腿亚洲色图| 久久免费看少妇高潮| 成人91在线观看| 亚洲国产乱码最新视频| 日韩欧美123| 成人av资源在线观看| 一区二区三区欧美在线观看| 337p亚洲精品色噜噜噜| 国产美女娇喘av呻吟久久| 亚洲人成在线观看一区二区| 欧美人成免费网站| 国产盗摄视频一区二区三区| 亚洲乱码中文字幕综合| 日韩欧美国产成人一区二区| 99re66热这里只有精品3直播 | 在线日韩av片| 久久电影网电视剧免费观看| 国产精品久久久久精k8| 欧美夫妻性生活| 国产suv精品一区二区6| 亚洲va韩国va欧美va精品 | 久久品道一品道久久精品| 91在线精品一区二区| 日韩电影一区二区三区四区| 国产精品三级视频| 91精品在线免费观看| 成人免费高清视频在线观看| 日本伊人色综合网| 亚洲欧洲av在线| 久久综合九色综合97_久久久| 99re66热这里只有精品3直播| 久久电影国产免费久久电影| 夜夜夜精品看看| 国产欧美日韩精品a在线观看| 欧美午夜一区二区三区免费大片| 国产精品自在在线| 日一区二区三区| 亚洲精品国产成人久久av盗摄| 日韩精品一区二区三区视频| 欧洲人成人精品| 成人国产亚洲欧美成人综合网| 蜜桃视频一区二区三区在线观看| 亚洲人成在线播放网站岛国| 久久久久久一二三区| 在线电影国产精品| 91黄色激情网站| 91在线精品一区二区| 国产成人99久久亚洲综合精品| 日韩高清一区在线| 亚洲国产综合91精品麻豆| 日韩理论电影院| 中文在线免费一区三区高中清不卡| 欧美一卡在线观看| 8x8x8国产精品| 欧美另类久久久品| 欧美视频自拍偷拍| 欧美在线你懂得| 欧美视频一区二区在线观看| 色婷婷精品久久二区二区蜜臂av| www.欧美色图| av电影在线观看不卡| 国产69精品久久99不卡| 国产精品18久久久久久久久| 国产综合一区二区| 国产真实精品久久二三区| 久久99国产精品久久99果冻传媒| 日韩电影免费一区| 六月丁香婷婷久久| 久久99精品国产麻豆婷婷洗澡| 免费av网站大全久久| 久久精品久久综合| 国产一区二区福利视频| 国产一区二区不卡在线| 国产乱国产乱300精品| 国产麻豆欧美日韩一区| 成人看片黄a免费看在线| 成人app下载| 色呦呦日韩精品| 欧美三区在线观看| 日韩视频123| 久久网这里都是精品| 国产欧美日韩在线看| 中文成人综合网| 亚洲丝袜精品丝袜在线| 亚洲一区二区av电影| 午夜精品久久久久久久| 玖玖九九国产精品| 国产宾馆实践打屁股91| 色哟哟一区二区| 欧美久久免费观看| www日韩大片| 国产精品成人午夜| 亚洲123区在线观看| 麻豆精品久久久| 不卡一区二区三区四区| 欧洲中文字幕精品| 精品国产凹凸成av人网站| 国产精品麻豆一区二区| 亚洲电影一级黄| 国产一区二区三区精品视频| 91免费小视频| 日韩区在线观看| 成人欧美一区二区三区白人| 天天影视涩香欲综合网| 大桥未久av一区二区三区中文| 91官网在线观看| 久久综合九色综合97婷婷| 一区二区三区在线视频观看58| 免费成人结看片| 一本大道av伊人久久综合| 欧美成人三级在线| 夜夜揉揉日日人人青青一国产精品| 免费看日韩a级影片| 91小视频免费看| 欧美成人官网二区| 亚洲一区二区三区四区在线观看 | 亚洲一级片在线观看| 美女爽到高潮91| 色偷偷一区二区三区| 欧美变态tickle挠乳网站| 亚洲国产欧美一区二区三区丁香婷| 午夜欧美视频在线观看| 成人h动漫精品一区二区| 91麻豆精品国产91久久久久久| 国产精品午夜电影| 六月丁香婷婷色狠狠久久| 91高清视频免费看| 国产精品乱码人人做人人爱| 喷水一区二区三区| 欧美性三三影院| 中文字幕在线观看一区二区| 精一区二区三区| 4438成人网| 亚洲午夜免费电影| 99久久国产综合精品女不卡| 精品国产欧美一区二区| 婷婷国产在线综合| 欧美中文一区二区三区| 国产精品久久久久久久久免费丝袜| 精品一区在线看| 日韩一区二区精品在线观看| 亚洲444eee在线观看| 在线视频你懂得一区| 成人欧美一区二区三区小说| 国产乱码精品一区二区三区忘忧草 | 国产精品日韩成人| 国产原创一区二区| 日韩精品中文字幕在线不卡尤物 | 51精品视频一区二区三区| 一区二区三区在线观看视频| av影院午夜一区| 国产精品嫩草久久久久| 成人深夜在线观看| 国产精品免费丝袜| 本田岬高潮一区二区三区| 国产网站一区二区三区| 国产精品一色哟哟哟| 久久久久国产精品麻豆ai换脸 | 国产乱子伦一区二区三区国色天香| 欧美一区二区三区视频免费| 美女视频第一区二区三区免费观看网站 | 精品国产sm最大网站免费看| 老司机精品视频一区二区三区| 91精品国产综合久久香蕉的特点 | 奇米色一区二区三区四区| 欧美人与性动xxxx| 日韩中文字幕av电影| 欧美一二三四区在线| 久久精品久久精品| 国产欧美日韩在线看| 97精品久久久午夜一区二区三区 | 精品99久久久久久| 国产精品91一区二区| 国产日产亚洲精品系列| 97精品久久久午夜一区二区三区 | 成人精品免费看| 亚洲女子a中天字幕| 欧美日精品一区视频| 奇米精品一区二区三区在线观看 | 亚洲在线免费播放| 欧美电影在哪看比较好| 激情av综合网| 成人免费在线播放视频| 欧美裸体一区二区三区| 精品一二三四在线| 亚洲欧洲av色图| 日韩午夜激情av|