annkie
驱动牛犊
驱动牛犊
  • 注册日期2003-07-31
  • 最后登录2003-10-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1424回复:3

为什么WriteFile失败阿?

楼主#
更多 发布于:2003-08-20 21:31
//打开设备
 HANDLE hUSB = CreateFile(\"\\\\\\\\.\\\\Geneusb0,
  GENERIC_READ|GENERIC_WRITE,
  FILE_SHARE_READ|FILE_SHARE_WRITE,
  NULL, //Ignored; set to NULL
  OPEN_EXISTING,//Specifies which action to take on files that exist
  FILE_FLAG_OVERLAPPED,
  NULL);
  if(hUSB == INVALID_HANDLE_VALUE)
  {
   ::MessageBox(0,\"打开USB设备失败!\",\"Error\",MB_OK|MB_ICONERROR);
  }


 //send SendData to usb
 
  DWORD nBytesWritten;
  DWORD nBytesToWrite = 8;
  BOOL bResult = false;

  const char *pData = \"SendData\";
   //send GetData
//   strcpy(pszBuffer,\"SendData\");
//   pszBuffer[8] = \'\\0\';

   bResult = ::WriteFile((HANDLE)hUSB,
                      pData,//(LPCVOID)pszBuffer,
                      (DWORD)nBytesToWrite,
                      (LPDWORD)&nBytesWritten,
                      (LPOVERLAPPED)NULL);

   ShowSystemErr();
   ShowMessage(nBytesWritten);
   if(bResult)
   {
    ShowMessage(\"write ok\");
   }
   else
   {//为什么总是写不进去啊,hUSB返回成功的啊。
    ShowMessage(\"write fail\");
   }

annkie
驱动牛犊
驱动牛犊
  • 注册日期2003-07-31
  • 最后登录2003-10-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-08-20 21:55
同步的会提示参数不对.

bResult = ::WriteFile((HANDLE)hUSB,
pData,//(LPCVOID)pszBuffer,
(DWORD)nBytesToWrite,
(LPDWORD)&nBytesWritten,//改为NULL
(LPOVERLAPPED)NULL);//改为(LPOVERLAPPED)&ov

这样又会死掉!
我该怎么办?
clementzhao
驱动大牛
驱动大牛
  • 注册日期2003-05-08
  • 最后登录2009-02-20
  • 粉丝0
  • 关注0
  • 积分28分
  • 威望63点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-08-21 09:27
hUSB是打开设备,还要打开设备端口啊,要不你往哪里写?
annkie
驱动牛犊
驱动牛犊
  • 注册日期2003-07-31
  • 最后登录2003-10-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-08-21 09:39
我是操作一根usb bridge线,我分不清哪里是pipe0或pipe1,好像它是由两个usb设备组合而成的,这样的话我打开的时候该怎么做?
问题是我有一个程序是在单机上,从一个文件读数据写到usb,然后从usb读数据再写到文件是正常的(打开方式如上),现在我想实现在两台pc直接传送文件,方法跟单机差不多,现在连写都不行,代码都差不多啊,艾。。。
游客

返回顶部