Jump to content
Macro Express Forums

kevin

Admin
  • Posts

    1,950
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by kevin

  1. Laurence, Earlier today I updated a macro that uses the technique I describe above. It uses the "Mouse Double Left Click on Control %C1%" command. When this command executes, the content of the edit box represented by the control variable is highlighted. This allows the Text Type to Control to overwrite the content of the edit box. The mouse did not move and focus did not change.
  2. Have you tried to double-click on the control? Often a double click will highlight the content of a component. If so then a Text Type to Control would work because the first character typed would replace all the hightlighted text. I would try manually double-clicking on the control and if the entire content is highlighted then insert the "Mouse Double Left Click on Control %C1%" command in your macro.
  3. Your observation is correct. When the Multiple Choice Menu command is used, it waits until the user inputs something before continuing with the macro. Your desire to have a wave file play after 5 seconds is an interesting idea. Perhaps others would like a similar featore. You should enter this as a feature request at http://www.macros.com/requestfeature.htm. In the meantime, here are a couple of ideas: 1. Play the .wav file before the Multiple Choice Menu command. Of course, that would mean that the user would hear the wav file every time, not just when they delayed answering for a while. 2. You could create a .wav file that has 5 or 10 seconds of silence at the beginning. Then you could have another .wav file that says something like 'done', 'thanks', 'tweep' or even 1 second of silence. Play the first .wav file before the Multiple Choice Menu command. Make sure that the 'Wait for wave file to finish' checkbox is unchecked. Then play the second .wav file after the Multiple Choice Menu command. What will happen is the .wav file with the silence will be 'playing' while the Multiple Choice Menu command is displayed. If the user answers, the first .wav file will be interupted by the second .wav file so the user will not hear the non-silent portion of the first .wav file. If the user does not respond quickly enough, they will hear the non-silent portion of the .wav file prompting them to answer. If you use this suggestion, perhaps you would share your .wav files with the newsgroup so others here could use them.
  4. Macro Express certainly has the commands necessary to perform this task. However, whenever the defragger is running, if other programs are also running, the Windows defrag program puts up a warning message and starts the defrag over again. This may be the reason that Microsoft says "the defragger cannot be scripted or scheduled." However, I suggest you try it and see what happens. If you have trouble with the defragger starting over, then you will need to try some tricks. For example, if you put Macro Express 'to sleep' during the duration of the defrag then the defragger should not start over. To do this, try the 'Wait Time Delay' or 'Wait Time Elapse' macro commands. These commands tell Windows to suspend Macro Express for a period of time. The challenge is that you will need to make an educated guess as to how long to put Macro Express to 'sleep'. You do not want Macro Express to wake up until the defrag process is complete. So, if your defrag process takes two hours, put Macro Express to sleep for 2.5 hours or so after launching the defrag process. Then, when Macro Express 'wakes up', it can perform the shutdown. You could write the macro so that after Macro Express 'wakes up' it determines if the defragger is still running and if so, go back to sleep for a longer period. The longer period would allow the defragger to start over and have more time to finish. If you keep a log (using the Log Messages command), the next day you can see when the macro performed certain steps (by examining the log file).
  5. If your floating menu macro is enabled, it will automatically come up when Macro Express is loaded. If your floating menu macro is not enabled, you could create a scheduled macro that runs 'At Startup' to enable it using the 'Macro Enable' command.
  6. What you need to do is to put the macros that process the values from the .csv file between the Begin and End Process commands like this: ASCII File Begin Process: "test.csv" (Comma Delimited Text ) Text Box Display: Test ASCII File End Process In a .csv file there are records and fields. Each record is one separate line. Each field is separated by a , on the same line. In the ASCII File Begin Process command, you choose the first variable to receive the content of the first field in each record. Subsequent fields are inserted into the next variable. For example, if you enter T1 in the ASCII File Begin Process command, then, for your example, the first field will be placed in T1 and the second field will be placed in T2. Using the macro above and the first three records from your example file: Test1,Test2 Test3,Test4 Test5,Test6 this is what will happen. The first time through the Begin/End loop T1 will be Test1 and T2 will be Test2. The second time through the loop T1 will be Test3 and T2 will be Test4. And the third time through the loop T1 will be Test5 and T2 will be Test6.
  7. It is okay to run macexp.exe with different parameters to launch a macro, even when Macro Express is already running. However, it is a little faster to use meproc.exe instead of macexp.exe. But, this was designed to allow other programs (batch files, C++, Delphi, VB, FoxPro, etc.) to run macros. The reason this is not working is that Macro Express will only run one macro at a time. Since one macro is already running when an attempt is made to run another macro, it fails. One solution is to put your playable macros in your macro library. Another solution, as Joe suggests, is to run your playable macros with the Load Macro Text File command.
  8. I know that the code suggested by Noggin the Nod will work because I use that technique for my password macros. Rather than having to remember a different hotkey for every application, I have one hotkey to enter my password or other login information. When I press F3 the macro looks to see which application has focus and sends the appropriate login/password.
  9. The macro that runs is the first one that was created, not the last (or first) modified. You might be able to adjust this by creating a new, blank, macro file and exporting/importing your macros making sure to import the one you want to have priority before the other macro. But we do not guarantee that this will work. And, you might get it working only to have it change sometime later (if the macro file was recreated or copied from a backup). Macro Express uses the first allowed macro method to reduce the amount of processing necessary to launch a macro. A routine to determine which window has focus and give priority to the macro(s) that match would slow down all macro activations. Yes, but you could have the 'activation' set to only run if the window that has focus is IE ('Run If On Top'). The scope will not affect how the macro runs once it is activated. It will still be able to close all your IE windows. The only difference is that the macro would not start unless at least one IE window had focus. If you do not wish to only activate the macro if an IE window has focus, then the code sample I provided or the main macro Noggin the Nod suggested should work. There is one more possibility. If you want your Win+Alt+W macro that closes all IE windows to run even when the window that has focus is not an IE window, then you could set the scope for that macro to 'Global'. Global macros have a lower priority than other 'scoped' macros.
  10. Do you have the 'Run If On Top' option checked in the Scope for the IE macro? If not, this may help. If the scope conditions are met for two different macros, the macro that runs is the first one in the macro file. In other words, the one that was created first. There is no option to allow the macros to be sorted by creation date so there is no way to predict which macro will run. If you cannot set the scope of your IE macro to 'Run If On Top' then you may want to add something like this to your IE macro: If Window Title "Inventor" is on top Macro Run: Inventor Macro Return End If . . remainder of macro
  11. Macro Express cannot log you into Window nor can it run macros run when you are not logged on. You can, however, write a scheduled macro that runs when Windows launches Macro Express.
  12. The movement of the cursor to the next cell is controlled by Excel, not Macro Express. Macro Express will automate whatever you can do manually. To see this, try typing into the cell. Excel will move the cursor to the next cell. Now run your macro that types into a cell. The actions should be the same. You can easily return the cursor to the original cell by adding Arrow Up to your Text Type command. Text Type: %T7%<ENTER><ARROW UP> You may need the ENTER key in between.
  13. What version of Macro Express are you using? The Ctrl+Alt+Shft+U hotkey was added with a recent version of Macro Express (I think it was added with version 3.5).
  14. If the hooks need to be restored then no hotkeys will work. If only one hotkey is not working then the hooks are not likely to be the cause. Other programs can 'register hotkeys' with Windows. You can even assign hotkeys or 'Shortcut keys' in the properties of a shortcut (the icon that launches a program). Macro Express does not know if a hotkey is registered by another program, it just attempts to use it. If another program is using Ctrl+Alt+L (or Ctrl+Alt+I) then a Macro Express macro with that hotkey will not run. To my knowledge, Windows does not have a built-in way to show which hotkeys (Shortcut keys) are used. However, I hear that there are utilities to do this.
  15. The Post Message command in Macro Express does not receive a returned value. Another thing to note is that the message used to retrieve the content of something, in this case a list box, *may* be different for each application. So, even if you found the correct message to post, that message may not work for another application (or even another list box on another application). Have you tried the Window Control commands?
  16. Macro Express 3 version 3.5b has been released and is now available for download from our site at http://www.macros.com/download.htm. All licensed Macro Express 3 users can download and install this update without cost. Changes include: - Made a modification to reduce the amount of memory consumed when saving a macro. - Improved the security when importing macros from a password protected macro file. After installing Macro Express 3, you can click Start | Programs | Macro Express | What's New for a complete list of changes. You may also view the list of changes on the web by visiting http://www.macros.com/revise.htm.
  17. Linda, The short answer is "not recommended." A longer answer is ... "it depends." Macro Express v 3.4b and earlier use icapture.dll. This file is a 'browser helper object' that integrates into Windows and Internet Explorer. Icapture.dll is 'registered' with Windows and only one copy of this file can be registered with Windows at a time. Icapture.dll did not change very often between different versions of Macro Express but it did change several times. Later versions of icapture.dll may be incompatible with earlier versions of Macro Express and visa versa. Beginning with Macro Express v 3.5, icapture.dll is no longer needed. So, you will have better luck having Macro Express v 3.5a or v 3.5 installed at the same time as v 3.4b and earlier. There are a few other things to consider: 1. The preferences between multiple versions of Macro Express will be the same. This includes the macro file. If you load a macro file created with the latest version of Macro Express into an earlier version of Macro Express, new macro commands will be converted to Text Type statements. This makes going between versions tricky. Not impossible though. 2. The folder where Macro Express is installed is written into the registry (along with the other preferences). If one of your macros looks at the location where Macro Express is installed, it may not work properly. 3. When Macro Express is installed, it registers the file extensions .mex and .mxe with Windows. This allows you to double-click on macro files and have them loaded into Macro Express. This feature will not work properly if you have two versions of Macro Express loaded. You may be able to get around the problems with issues #1 and #2 (and ignore issue #3) if you use Windows XP, 2000 or NT. The solution is to create multiple user logins (for Windows). Install Macro Express v 3.4b with the login 'Linda' and install Macro Express v 3.5a (or later) with the login 'adniL'. Make sure you turn off the 'All users use same settings' option in Options | Preferences | Miscellaneous for both versions.
  18. Normally, no. Windows sends all keystrokes and mouse movements/clicks to the application that has "focus." However, if you avoid certain types of macro commands, you can send macros to certain applications that do not have focus. For example, you may be able to use Window Controls to send mouse clicks, text type information and get the contents of input fields. The attached macro uses notepad and calculator to demonstrate how this could work. Calculator is launched and hidden. Notepad uses calculator to add some numbers together and display the result. calc_notepad.mex
  19. I do not have a solution but I do have some additional information. Some malware (trojans, viruses, key loggers, etc.) use the Windows 'hooks' to perform their mischief. Macro Express uses the Windows 'hooks' to send and receive keyboard and mouse information to and from Windows. Some programs ban all programs that use the hooks and thus ban Macro Express.
  20. To set focus to a specific window use the "Activate Window" command. This command needs the name of the Window title as a parameter. You can type this directly into the command if the window title does not change. Activate Window: "Window title here" On the other hand, if the window tile varies, you could use the 'Variable Set String from [topmost] Program Name' prior to the 'Repeat Prompt Start' command and then put the variable in the 'Activate Window' command. Variable Set String %T1% from Program Name Activate Window: "%T1%"
  21. Do you have cookies enabled? Have you cleared your cookies since you last signed in? I have been clearing my cookies frequently lately. After clearing the cookies, when I come back to the forum, it no longer signs me on automatically and the 'unread' icon (the down arrow in a blue box) does not show up. But, happily, once I sign on again, every thing is okay again. Okay, that is, until I clear my cookies again.
  22. Beyond Compare is a great utilitity that I include in my 'must-have' list of software. I don't use it every day, but when I do it saves me an enormous amount of time. I had not thought about using Beyond Compare with the Windows Registry. Do you export the registry before your comparison or do you compare the registry files directly?
  23. I am surprised to hear there are 215 changes to the registry as a result of installing Macro Express. I would not be surprised if there were 215 changes to the registry after Macro Express runs for the first time. All of the Macro Express preferences are saved in the registry. We have taken great care to ensure that registry entries used by Macro Express do not "degrade the performance of, or impair the functionality of other applications."
  24. Check out the article in the October 2002 issue of the Macro Express News email newsletter.MENewsOct2002
  25. kevin

    Taskbar

    I can bring up the taskbar's properties by right-clicking in the taskbar and pressing the Up Arrow and then Enter keys. You should be able to perform these steps using a macro. Mouse Move Screen 1111, 1011 Mouse Right Button Click Text Type: <ARROW UP> Delay 0.1 Seconds Text Type: <ENTER> You will need to adjust the coordinates used in the Mouse Move Screen command. Also, you may want to make your macro work with different screen resolutions by calculating the screen size and using the Get Pixel Color command to determine an empty area of the taskbar.
×
×
  • Create New...