Jump to content
Macro Express Forums


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Samrae

  1. AtinK: You could use the Windows Task Scheduler to run a macro. When you define a task in the scheduler you can specify that it needs to log in to perform the task. For the process you can either specifiy the Macro Express Player (macexp.exe) or the smaller launcher (meproc.exe) and use a parameter that looks something like "/AYourMacro". Cory: After reading your critique of AtinK's macro I decided to look at it. For anyone else interested, here it is in human readable form: If Program "XYZ" is running Terminate Process: XYZ End If Delay: 5 seconds Launch Program and Activate Window: Prog
  2. When Macro Express Pro loads up it checks to see if another instance of Macro Express Pro is already running. If it is then the new instance terminates. You cannot run two instances of Macro Express Pro in the same session. Paul, is it possible for a process running in one session to see the process from another session? I thought they were independent of each other. Edit, I see from Cory's response that .NET can see processes from other sessions.
  3. The Terminal Services Session ID command will tell you if you are using the Console or some other session. Could you use that information? Perhaps write it to a file. When a macro starts have it compare the current Session ID with the Session ID in the file. If they match you know that Macro Express forgot to clear the flag the last time it ran. If they do not match you know another session set the flag. Or, you may just decide to run the macros from the console session. I think the console session is always 1. What conflicts? Do you need a unique filename? If you include the Session
  4. Put Text Box Display commands before and after you Multiple Choice commands to display the value in your Choice variable. Put one outside the repeat loop to see when it gets out. This will help you figure out what is going wrong. If you expect to see "choice 1" and you are seeing "A" then you need to change to the Multiple Choice Menu's "Result Options" from "Save Item Value" to "Save Item Text". To have the macro perform different stuff when the user clicks Cancel, experiment with the options in the "On Error" tab of the Multiple Choice command. In my testing I found the "Variable Set St
  5. What does your code look like? This sample macro works until the user leaves the choice blank or clicks the Cancel button. Repeat Until %Choice% Equals "" Variable Set String %Choice% to "" Multiple Choice Menu: Make Your Choice Text Box Display: Choice If Variable %Choice% Equals "" Continue End If End Repeat The "On Error" "The dialog was cancelled" setting for the Multiple Choice Menu is at the default value of Halt Macro.
  6. If macro A does a Save Variables and sometime later macro B does a Restore Variables the variables in Macro B will contain values from Macro A. Sometimes this is intentional and needed but from what I have seen, it is more often unnecessary. When a macro is activated it receives its own copy of variables. In other words, all its variables are empty. If variables are defined as 'Global' they are passed to other macros called from the top level macro via a Macro Run command. The Save Variables and Restore Variables commands are not needed for this to happen. When a variable is not defined as
  7. Simple fix? Switch to WIndows 7 or 8. Are you using NTFS or FAT32 on your Windows XP system? It may be that you just need to upgrade to NTFS. Here's what happens: Macro Express requests the files in a certain folder. On Windows XP (or FAT32) information for the files is returned in the order they were written to the disk drive. On Windows Vista and later (or, possibly on an NTFS system) when Macro Express requests the files from Windows they are returned in alphabetical order. When you use Windows Explorer it sorts the list of files based on your sort criteria. They may be alphabe
  8. This would be clearer: Get Pixel Color at (30, 88) Relative to Current Window into %PageIconColor% Get Pixel Color at (48, 107) Relative to Current Window into %LinksIconColor% Get Pixel Color at (48, 394) Relative to Current Window into %MacrosIconColor% Note the descriptive variable names instead of N2, N4 and N5. From the help (emphasis mine):
  9. It is easier if you post the text version of your script so we don't have to copy and paste it into a macro to help. To copy the commands to the clipboard highlight your macro commands, right-click and choose "Copy Command Text". Your macro looks like this: Variable Set Integer %N1% to 0 Repeat Until %N1% Equals "1" Delay: 2 seconds // 'Page' icon Get Pixel Color at (30, 88) Relative to Current Window into %N2% // 'Links' icon Get Pixel Color at (48, 107) Relative to Current Window into %N4% // 'Macros' icon Get Pixel Color at (48, 394) Relative to Current Window into %N5% If
  10. To copy the current window title into a string variable use the "Variable Set String %T9% from Window Title" command.
  11. I think the Macro Express Pro "Lock/Unlock Keyboard and Mouse" command only works if Macro Express Pro is running as an administrator. Wouldn't these Shell examples also need to run as an administrator in order to work?
  12. I suggested that sample macro because I thought the technique described, setting a date format using the "Run Macro in Variable" command, could be adapted to what you need.
  13. Sorry. Here is the link to the Macro Express 3 version of that sample macro Run Macro in Variable to Convert a Date Are you aware of the sample macros available here www.macros.com/share.htm?
  14. Cory already showed how to pass a variable from Macro Express Pro to a VBScript. Maybe this more detailed explanation will help you understand how it works. VBScript does not know anything about Macro Express Pro. It has no way to directly read the content of a Macro Express variable. Macro Express has its way to store variables. VBS has another way to store variables. To pass the content of a Macro Express Pro variable into a VBScript you have to use the VBS command to set a value to a variable. The format to create variables and set them to specific values in VBS looks something like
  15. I would try the technique described here: Date String to DateTime Variable.
  16. The color 16777215 / 0xFFFFFF / 255 255 255 is white while 0 / 0x000000 / 000 000 000 is black. Each number can vary between 0 and 255 and represents how much Red, Green and Blue to display. If the computer displays all red, green and blue possible you get white and if it displays no red, green and blue you get black. Since colors are represented by numeric values it is possible create a "Wait for Pixel Color" function by creating a Repeat statement to wait until the value matches a certain color. In my macros I use OR statements to check for several colors. You need to be careful, though,
  17. The portable version is written specifically for drives that can be removed from time to time. The standard version is meant to be installed on a drive that doesn't get removed. Your comment about licensing is a little confusing. If you have a 1-user license for the portable version then you should only be using it on one computer at a time. You can move it from computer to computer because it is portable. But if you install it on your HDD then I'm not sure the license allows you to use it on a flash drive for your other computer. The macros will run on either version of Windows. Howev
  18. What I do is to search for some text in front of the button, type TAB to get focus to the button and then do the ENTER. Are you searching for the text of the button or text of something in front of the button?
  19. Note that the portable version does things that are helpful on a removeable drive but may not be on your main hard drive. One such feature is to place an autorun.inf file on the root of the drive to customize the icon for the drive.
  20. Does Enter work on the buttons when they are active? Have you tried find text, tab to the button and then Enter?
  21. You are correct. Macro Express will convert a number to a string but will not insert the thousands separators. Perhaps a feature request?
  • Create New...