From: Attributesoft on
On 10 , 14:34, Tim <timothy.j.gr...(a)gmail.com> wrote:
> On 10 Jun, 07:05, Attributes...(a)gmail.com wrote:
>
> > Ivan Brugiolo, thank you very much for your answer.>- When the event rendez-vous has happened,
> > >the controlling application will ask the display driver,
> > >(for example, via [Ext|Draw]Escape) a convenient
> > >representation of the changed content.
>
> > I want to get all changes for example in 50ms, I think this will more
> > better way.
> > So I need do that my Win32App will get only those changes thought
> > DrvEscape.
> > How can I do that my Win32App will get only changes for period 50ms?
> > Maybe I need to get bitmap and to clear mirror surface every time when
> > I call DrvEscape to get that result with only changes?
>
> With the Pull model above the mirror driver should accumulate the
> dirty regions since the last time the user mode application asked for
> the previous accumulation. Getting a normal user mode application to
> be precise at 50ms is tricky, so maybe you could mark each record of a
> dirty region with the current clock tick, and let the user mode
> application sort it out (you're going to have lag over the network
> anyway).
>
> Is this a hobby, or a commercial replacement for VNC, Windows Remote
> Desktop ...
>
> Tim.

Hobby.
How can I accumulate the dirty regions?
Do I need to make local variables or there is another way to do it?

From: Attributesoft on
I achieve in using Mirror driver with Win32 thought DrvEscape.
Now I need to do DrvEscape which returns buffer with screen changes
which happened before last DrvEscape call.
In which direction I need to do?
Sorry for not correct English.

From: Ivan Brugiolo [MSFT] on
You can accumulate the dirty regions by accumulating
the bounding rect(s) and the CLIPOBJ information that
is passed to the display driver to each DrvXXX call.
By definition, it's a strict enough superset of the changed area.

--
--
This posting is provided "AS IS" with no warranties, and confers no rights.
Use of any included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm


<Attributesoft(a)gmail.com> wrote in message
news:1181477053.513004.310630(a)g4g2000hsf.googlegroups.com...
> On 10 , 14:34, Tim <timothy.j.gr...(a)gmail.com> wrote:
>> On 10 Jun, 07:05, Attributes...(a)gmail.com wrote:
>>
>> > Ivan Brugiolo, thank you very much for your answer.>- When the event
>> > rendez-vous has happened,
>> > >the controlling application will ask the display driver,
>> > >(for example, via [Ext|Draw]Escape) a convenient
>> > >representation of the changed content.
>>
>> > I want to get all changes for example in 50ms, I think this will more
>> > better way.
>> > So I need do that my Win32App will get only those changes thought
>> > DrvEscape.
>> > How can I do that my Win32App will get only changes for period 50ms?
>> > Maybe I need to get bitmap and to clear mirror surface every time when
>> > I call DrvEscape to get that result with only changes?
>>
>> With the Pull model above the mirror driver should accumulate the
>> dirty regions since the last time the user mode application asked for
>> the previous accumulation. Getting a normal user mode application to
>> be precise at 50ms is tricky, so maybe you could mark each record of a
>> dirty region with the current clock tick, and let the user mode
>> application sort it out (you're going to have lag over the network
>> anyway).
>>
>> Is this a hobby, or a commercial replacement for VNC, Windows Remote
>> Desktop ...
>>
>> Tim.
>
> Hobby.
> How can I accumulate the dirty regions?
> Do I need to make local variables or there is another way to do it?
>


From: Attributesoft on
Ivan, what can you about this article http://msdn2.microsoft.com/en-us/library/ms797870.aspx
, I wanted to test it, but I don't found WNDDATA structure and
DrvVideo function.
>You can accumulate the dirty regions by accumulating
>the bounding rect(s) and the CLIPOBJ information that
>is passed to the display driver to each DrvXXX call.
>By definition, it's a strict enough superset of the changed area.
Mmm... maybe you right, but I'm afraid of overload because if I store
array of CLIPOBJ it will get by time bigger and bigger.
Sorry for not correct English.

Vit.

From: Ivan Brugiolo [MSFT] on
The added value of your code would naturally
be to meaningfully union the rectangles in the CLIPOBJs.
There is no free bread for waht you are trying to do.

--
--
This posting is provided "AS IS" with no warranties, and confers no rights.
Use of any included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm


<Attributesoft(a)gmail.com> wrote in message
news:1181509615.860750.135580(a)g4g2000hsf.googlegroups.com...
> Ivan, what can you about this article
> http://msdn2.microsoft.com/en-us/library/ms797870.aspx
> , I wanted to test it, but I don't found WNDDATA structure and
> DrvVideo function.
>>You can accumulate the dirty regions by accumulating
>>the bounding rect(s) and the CLIPOBJ information that
>>is passed to the display driver to each DrvXXX call.
>>By definition, it's a strict enough superset of the changed area.
> Mmm... maybe you right, but I'm afraid of overload because if I store
> array of CLIPOBJ it will get by time bigger and bigger.
> Sorry for not correct English.
>
> Vit.
>