Jump to content
Macro Express Forums
Sign in to follow this  
High

get pixel screen coords and Windows Vista

Recommended Posts

Example

 

repeat until %N10% to 0

get pixel screen coords : 1271,8 into %N10

Repeat end

 

In window vista is not functionality

 

some time exits me from the cycle even if the variable N10 is not equal to 0

 

I have the last version of macro espress

 

there is any upgrade ????

Share this post


Link to post
Share on other sites

We have not had reports of any problems with this feature.

 

The latest version of the program is 3.7.3.1 (v 3.7c) Click on Help | About to determine the version that you are running. If you are not running 3.7.3.1 (v 3.7c), you will need to download it as previous version are not Vista compatible.

 

You can troubleshoot the macro by adding a Text Box Display command in the loop with %N10% in the body. This will tell you what N10 is each time the loop repeats.

Share this post


Link to post
Share on other sites

Are you sure the pixel color is ever reaching pure black (0)? I'm searching my desktop and out of all the things that appear black I can only find one that registers "0". Also sometimes windows dithers the edges of things like fonts. Have you used the Mouse Locater to verify it's pure black? You might want to run it from an F9 and keep the variables debug window open and see what N10 is.

 

Hint: you might want to put a small delay in your loop.

Share this post


Link to post
Share on other sites

Sure. Make a sample (simple) that demonstrates the problem using something like Notepad and post it here for me to try on my Vista machine.

Share this post


Link to post
Share on other sites
Sure. Make a sample (simple) that demonstrates the problem using something like Notepad and post it here for me to try on my Vista machine.

 

i Post read on top, with xp it's ok with vista no think is a bug

Share this post


Link to post
Share on other sites
i Post read on top
What you posted was a description of a macro, not the macro itself. We suggest that you post your actual macro.

 

There are many customers successfully using the Get Pixel Color command on Windows Vista. We have tested it here and cannot find a problem. If you post your macro we can help determine if your macro needs to be revised.

Share this post


Link to post
Share on other sites

<IVAR2:80:01:0><MMS2:756,857><DELAY:10><REP3:08:000001:000002:0080:0:01:4210752><DELAY:5><MMS2:756,857><GETPX:80:S:000966:000847><MSD:5><ENDREP>

 

this cicle must be finish when the variable %80% not is equal at 4210752

 

the cicle finish and variable %80% is equal at 4210752

 

but this only on vista

Share this post


Link to post
Share on other sites

it's right

 

<IVAR2:80:01:0><MMS2:756,857><DELAY:10><REP3:08:000002:000002:0080:0:01:4210752><DELAY:5><MMS2:756,857><GETPX:80:S:000966:000847><MSD:5><ENDREP>

 

 

when variable % 80% is <> of 4210752 the loop must be finish

 

but this finish and variable 80 is = 4210752

 

in vista i have the problem, with xp all funtion as perfect

Share this post


Link to post
Share on other sites

Your exact code was unusable to me so I distilled it to the core commands. For instance the mouse moves do nothing for function. Also I changed the desired pixel color in order to to work with my window. In this case white in Notepad is 16777215.

Repeat Until %N80% = 16777215
 Get Pixel: Window Coords: 100,100 into %N80%
Repeat End
Text Box Display: Result

Or in DE:

<REP3:08:000001:000002:0080:0:01:16777215><REM2:
><GETPX:80:W:000100:000100><REM2:
><ENDREP><REM2:
><TBOX4:T:1:CenterCenter000278000200:000:ResultAll done!>

This macro works flawlessly in Vista. I created several rows of spaces in Notepad and then highlighted them to make the text editing area blue. I fired of the macro and let it run for a few seconds. I then hit the Home key to remove the highlight changing it to white and the repeat aborted.

 

One thing I noticed was you use of a Mouse Move to 756,857. Why did you do this twice? I ask because your Get Pixel Color has a different coordinate 966,847

 

FYI you do not need to set N80 to zero before starting. The evaluation will not occur until the repeat.

 

Are you sure you're checking the color again when you move to the Vista system? I know I have a macro I am working on right now that runs on Vista and XP. It was developed on Vista and when I tried to run it on XP to look at the gray status bar in IE7 it would time out. Turns out the gray value in Vista's IE7 is different than the gray value in XP. You might try adding this code after your Get Pixel Color to see what's happening.

<TBCLOSE:Color><TBOX4:F:1:00LeftCenter000278000200:000:Color%N80%><MSD:500>

Share this post


Link to post
Share on other sites

Here is your macro in a readable format:

Variable Set Integer %N80% to 0
Mouse Move Screen 756, 857
Delay 10 Seconds
Repeat Until %N80% = 4210752
 Delay 5 Seconds
 Mouse Move Screen 756, 857
 Get Pixel: Screen Coords: 966,847 into %N80%
 Delay 5 Milliseconds
Repeat End
Text Type:

The Get Pixel command does not get the pixel under the mouse. It gets the pixel of a specific location on the screen. Is it necessary to move the mouse prior to the Get Pixel command? Does moving the mouse trigger something that changes the screen at location 966,847?

 

when variable % 80% is <> of 4210752 the loop must be finish
This macro will wait until N80 equals 4210752. It does not wait for N80 to not equal 4210752.

 

If you want the macro to wait until N80 <> 4210752 then try this:

Variable Set Integer %N80% to 0
Mouse Move Screen 756, 857
Delay 10 Seconds
Repeat Until %N80% <> 4210752
 Delay 5 Seconds
 Mouse Move Screen 756, 857
 Get Pixel: Screen Coords: 966,847 into %N80%
 Delay 5 Milliseconds
Repeat End
Text Type:

Share this post


Link to post
Share on other sites

I move mouse in 756, 857 because in this condiction i have the pixel in 966,847 with 4210752

value

 

the problem is in vista not functionality but in xp it's right.

Share this post


Link to post
Share on other sites

The function on vista not functionality very well

 

any one know this bug ?????

 

 

Variable Set Integer %N80% to 0

Mouse Move Screen 756, 857

Delay 10 Seconds

Repeat Until %N80% <> 4210752

Delay 5 Seconds

Mouse Move Screen 756, 857

Get Pixel: Screen Coords: 966,847 into %N80%

Delay 5 Milliseconds

Repeat End

 

 

in xp is good in vista not functionality . WHY ?

Share this post


Link to post
Share on other sites

As far as we can tell there is no bug with the Get Pixel command in Macro Express on Vista. As Jason pointed out 4 days ago you need to determine the color that is being returned on Windows Vista and adjust your macro accordingly.

Share this post


Link to post
Share on other sites
As far as we can tell there is no bug with the Get Pixel command in Macro Express on Vista. As Jason pointed out 4 days ago you need to determine the color that is being returned on Windows Vista and adjust your macro accordingly.

 

The color is right but the cicle stop it's the real problem

Share this post


Link to post
Share on other sites

High I have tested this in Vista and it works correctly. Try the test and macro I gave you and tell me the result. Then I/we can help you. Otherwise we're wasting our time here.

Share this post


Link to post
Share on other sites

You can also open up the "mouse locator" from your "Tools" menu. On the information screen that comes up, the pixel color value will be on the bottom and will display in real time the value of the pixel currently under your cursor.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...