But I cannot access video0.
Maybe video0 was exclusive occupied by videoport.
You could send IOCTL_VIDEO_MAP_VIDEO_MEMORY to the miniport of the display
driver. That should give you a user-accessable virtual address. Check the
DDK for further details.Beware however that video memory isn’t necessarily straight-forward
accessible (as in, the data isn’t necessarily ordered in the way you see
them on the screen), so you may have to mangle the data from the video
memory to make it recognisable.–
Mats-------- Notice --------
The information in this message is confidential and may be legally
privileged. It is intended solely for the addressee. Access to this
message by anyone else is unauthorized. If you are not the intended
recipient, any disclosure, copying or distribution of the message, or any
action taken by you in reliance on it, is prohibited and may be unlawful.
If you have received this message in error, please delete it and contact
the sender immediately. Thank you.xxxxx@lists.osr.com wrote on 11/26/2004 03:47:54 AM:
> Thank you for your response!
> I want to access video memory througth video0.
> >Because video port driver creates \devcice\videoN with exclusive flag
set.
> >
> >What do you want to accomplish by access video DO?
> >
> >-
> >Calvin Guan Software Engineer
> >ATI Technologies Inc. www.ati.com
> >
> >-----Original Message-----
> >From: f [mailto:xxxxx@eyou.com]
> >Sent: November 24, 2004 8:36 PM
> >To: Windows System Software Devs Interest List
> >Subject: [ntdev] Why I cannot open “Display1” ?
> >
> >Hi ,Everyone.
> >I just take a test to open the video device “Display1” and to get a
> >File_Object for accessing the video buffer . Code I used :
> >
> >PFILE_OBJECT VideoTest_OpenDisplayDevice(ULONG DisplayNumber)
> >{
> > WCHAR DeviceNameBuffer[40];
> > UNICODE_STRING DeviceName;
> > NTSTATUS Status;
> > PFILE_OBJECT VideoFileObject;
> > PDEVICE_OBJECT DeviceObject;
> >
> > swprintf(DeviceNameBuffer, L"\Device\Video%d", DisplayNumber);
> > RtlInitUnicodeString(&DeviceName, DeviceNameBuffer);
> >
> > Status=IoGetDeviceObjectPointer(
> > &DeviceName,
> > FILE_READ_ATTRIBUTES,//FILE_ALL_ACCESS ,
> > &VideoFileObject,
> > & DeviceObject
> > );
> >
> >
> > if (!NT_SUCCESS(Status))
> > {
> > DbgPrint(“Status=0x%x\n”,(ULONG)Status);
> > return(NULL);
> > }
> >
> > return VideoFileObject;
> >}
> >
> >The result is NULL, Status=0xc0000022,it means “STATUS_ACCESS_DENIED”.
> >Why?
> >
> >
> >
> >
> >
> >–http://www.eyou.com
> >–Îȶ¨¿É¿¿µÄµç×ÓÐÅÏä ÓïÒôÓʼþ Òƶ¯ÊéÇ© ÈÕÀú·þÎñ ÍøÂç´æ´¢…ÒÚÓÊδ¾¡
> >
> >–http://vip.eyou.com
> >–¿ì¿ìµÇ¼ÒÚÓÊVIPÐÅÏä ×¢²áÄúÖÐÒâµÄÓû§Ãû
> >
> >
> >
> >—
> >Questions? First check the Kernel Driver FAQ at
> >http://www.osronline.com/article.cfm?id=256
> >
> >You are currently subscribed to ntdev as: xxxxx@ati.com
> >To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
> >—
> >Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
> >
> >You are currently subscribed to ntdev as: unknown lmsubst tag argument:
‘’
> >To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
>
>
>
> –http://www.eyou.com
> --Îȶ¨¿É¿¿µÄµç×ÓÐÅÏä ÓïÒôÓʼþ Òƶ¯ÊéÇ© ÈÕÀú·þÎñ ÍøÂç´æ´¢…ÒÚÓÊδ¾¡
>
> –http://vip.eyou.com
> --¿ì¿ìµÇ¼ÒÚÓÊVIPÐÅÏä ×¢²áÄúÖÐÒâµÄÓû§Ãû
>
> –http://sms.eyou.com
> --ÎÞÓǶþ¶þ×å¡¢×ãÇò´ó¸»ÎÌ…¾¡ÔÚÒÚÓʶÌÐÅ
>
> —
> Questions? First check the Kernel Driver FAQ at http://www.
> osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@3dlabs.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com> ForwardSourceID:NT00008016
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256You are currently subscribed to ntdev as: unknown lmsubst tag argument: ‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com
–http://www.eyou.com
–Îȶ¨¿É¿¿µÄµç×ÓÐÅÏä ÓïÒôÓʼþ Òƶ¯ÊéÇ© ÈÕÀú·þÎñ ÍøÂç´æ´¢…ÒÚÓÊδ¾¡
–http://vip.eyou.com
–¿ì¿ìµÇ¼ÒÚÓÊVIPÐÅÏä ×¢²áÄúÖÐÒâµÄÓû§Ãû
–http://sms.eyou.com
–ÎÞÓǶþ¶þ×å¡¢×ãÇò´ó¸»ÎÌ…¾¡ÔÚÒÚÓʶÌÐÅ