none
请教wince下摄像头应用程序的编写 RRS feed

  • 问题

  • 请教wince下摄像头应用程序的编写,目前手头有一个摄像头的驱动程序,想写个应用程序测试,只要能够预览并保存图片即可。

     我分析了驱动程序,大概思路为:先createfile,再open,后面应该是iocontrol。

    现在的主要问题是iocontrol的参数不会写,请老师指导指导,谢谢了。

    下面是我的主要代码,在执行DeviceIoControl (hCam, CAM_IOCTL_IMAGE_SIZE,
            NULL, 0,
            NULL, 0, NULL, NULL);
    时会出现数据异常,我怀疑是参数不对。

     

    hCam = CreateFile (TEXT("CIS1:"), GENERIC_WRITE | GENERIC_READ,
             0, NULL, OPEN_EXISTING, 0, NULL);
     if (hCam == INVALID_HANDLE_VALUE)
     {

      printf ("can't open camera ");
     }

     f = DeviceIoControl (hCam, CAM_IOCTL_IMAGE_SIZE,
            NULL, 0,
            NULL, 0, NULL, NULL);
      if(!f)
       printf("CAM_IOCTL_IMAGE_SIZE wrong!\n");  

      f = DeviceIoControl (hCam, CAM_IOCTL_MOVIE_START,
            NULL, 0,
            NULL, 0, NULL, NULL);
      if(!f)
       printf("CAM_IOCTL_MOVIE_START wrong!\n");

    2008年9月19日 2:45

答案

全部回复

  • 这个iocontrol的code跟你的驱动程序紧密相关,其它人是不可能知道到底该怎么填的,最好的办法是问你的摄像头提供商。

    2008年10月6日 16:49
    版主
  •  

    DeviceIoControl (hCam,  CAM_IOCTL_IMAGE_SIZE
            NULL, 0,
            NULL, 0, NULL, NULL);

    中CAM_IOCTL_IMAGE_SIZE是用来实现图片大小用的,需要根据实际驱动程序设置其它参数。

    2008年10月9日 8:11