Jump to content
Macro Express Forums

Yehnfikm8Gq

Members
  • Posts

    397
  • Joined

  • Last visited

Everything posted by Yehnfikm8Gq

  1. My guess is that's the way it was written. Generally not a usage issue since case does not affect most file operations. Ugly if you are using the name in a real-world document or web page. You could submit it as a bug to ISS.
  2. To answer your last question, you may be aware from using ME Text Box Displays that you can have windows on top that are not focused. There are settings in TBD for exactly that. The same applies to a lot of notifications and tooltips. If your AV software updates and brings up a window, it may be on top but is not focused and does not affect anything other then when you click to close. There could also be issues if the page is a web document or a video overlay. I don't know how Citrix works - the window may be inaccessible to ME. Can you manually manipulate the Patient Chart window with mouse and/or keyboard (which seems to be on top but not focused)? Clicking the window with the mouse may give focus and can be incorporated into the macro. I'm not very clear on what you are doing manually and what is supposed to be done by the macro. In your first explanation you say "When I use a Wait Unitl Window command for Key strokes to initialize, the practice manager window opens but does not activate such that the "wait until window" command triggers". That conflicts with "I use a macro to open a patient chart and reposition the window on the desktop". How many macros are there? Here is my interpretation: Manually open Practice Manager Manually open appointment calendar (if not part of step 1) Manually click (or double-click) on a patient name/appointment When Patient Chart window appears the macro runs (activation: Wait for Window Title on Opening) The macro positions the Patient Chart and carries out various functions with the chart data.
  3. If you choose to activate the macro on window focus rather than opening, every time the window gets focus the macro will run. You can end up with "musical windows" depending on the commands. If that is not the issue, try using the Set Window Order in Windows/Programs. Set the window on top. I assume the window is the one found with the three letters so you would have to use those as a partial title. To change to another window you may have to mess with window order rather than/in addition to the normal activation command. I can't test if this will work with your other software. BTW are you using ME3 per the comment in the thread title or MEPro per this forum?
  4. I can't think of any easy method at the moment. From my tests, if you have an ME macro initiated by F1, the macro will start and you only get the Help in addition if ME is on top. One explanation of your situation could be that if WoW is running as an overlay, that ME is seen as the topmost window. Fairly unlikely though. Have you tried burying ME under a few other windows? If so, do you get their Help instead! Also try sending ME to the tray ie close Explorer. For standard applications I find that if you hit F1, the Help for the topmost application appears, not ME. I assume you have F1 in WoW allocated to some other function. Does WoW respond to the F1 as you have set, as well as initiating ME Help? ME Help does not seem to open as a new process but you can shut the window down.
  5. I created a text file with a name based on the text of your post: !aaMacroExpressexaminesawindowtitleuptohowmuchofthetitledoesitexamineIamlookingtotriggerthemacrobasedonapartialwindowtitlethatisthreexyzletterslong.txt That's about 150 characters with the extension. I activated another macro based on "xyz" being in the window title which gains focus and it worked fine. Ditto for window is opened. I assume ME will work up to the max allowable in NTFS of 255. If yours is not activating it may be for other reasons.
  6. This will not be of any use if you don't use AutoIt. Below is macro running an External Script. It returns the Ping (send + return) in T[2]% in millisecs or an error message. The input and outputs can be set however user wishes. To determine bad ping check to see if %T[2]% contains "Error". I've only done limited testing. It seems to work fine if you miss off the www. Variable Set String %T[1]%: Prompt External Script: AutoIt // Ping URL or IP address Text Box Display: Ping Send and Return Time (milliseconds) to %T[1]% <VARIABLE SET STRING Option="\x01" Destination="%T[1]%" Prompt="Enter URL or IP eg www.google.com 74.125.95.103\r\nTimeout is set in External Script to 4 secs" Mask="FALSE" OnTop="FALSE" Left="Center" Top="Center" Monitor="0"/> <EXTERNAL SCRIPT Language="AutoIt" Dest="%T[2]%" Script=";URL or IP entered via %T[1]% in Parameters\r\n\r\n$address = $cmdline[1]\r\n;Msgbox(0,\"Status\", $address)\r\n$var = Ping($address, 4000)\r\nIf $var Then\r\n ConsoleWrite($var)\r\nElse\r\n;Msgbox(0,\"Status\", @error)\r\n If @error = 1 Then\r\n ConsoleWrite(\"Error: Host is offline\")\r\n ElseIf @error = 2 Then\r\n ConsoleWrite(\"Error: Host is unreachable\")\r\n ElseIf @error = 3 Then\r\n ConsoleWrite(\"Error: Bad destination\")\r\n ElseIf @error = 4 Then\r\n ConsoleWrite(\"Error: Other\")\r\n EndIf\r\nEndIf\r\n" Parameters="%T[1]%" _COMMENT="Ping URL or IP address"/> <TEXT BOX DISPLAY Title="Ping Send and Return Time (milliseconds) to %T[1]%" Content="{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Tahoma;}{\\f1\\fnil Tahoma;}}\r\n\\viewkind4\\uc1\\pard\\lang4105\\f0\\fs16 \r\n\\par \\pard\\qc %T[2]%\\lang1033\\f1 \r\n\\par }\r\n" Left="Center" Top="Center" Width="378" Height="115" Monitor="0" OnTop="FALSE" Keep_Focus="TRUE" Mode="\x00" Delay="0"/> Code revised from first posting - could not get error messages to work with Case Select or Switch.
  7. The date/time command can give results down to millisecs. Not 100% accurate because time for commands to be executed will be included. After extracting the before and after times into variables with Date/Time Set Variable you use Variable Modify Date/Time to do the subtraction and then extract seconds and milliseconds. The time may not be the same as was measured with ME3. It depends how that command was configured. I've no idea why MEPro is different to ME3.
  8. I don't use the Ping command but I get the same short string that you reported. You could use the Date/Time command before and after to calculate the time for a response.
  9. I can't answer the question offhand (in fact I don't recollect red Xs) but are you talking from the page author's viewpoint or to stop the action on a PC at your location? If it's at your location, what is the intent and under what circumstances can it be cancelled? Password protected? PC reboot?
  10. It sounds like Excel is trying to get your attention because it is trying to get focus but is being held back by another application. The general idea of the flashing is not to steal focus from the foreground application (behaviour set in registry, HKEY_CURRENT_USER\Control Panel\Desktop, ForegroundFlashCount). Only you can see what else is running - the application you mentioned plus whatever. The other application may be hanging things up a bit. When you activate Excel you could add a delay of say 1 sec (trial and error) then activate again. Alternatively put in a loop that checks if Excel is focused and if not, make it so (Jean Luc Picard's words, not mine!) (edit) Another aspect could be that when copying data, you are trying to activate Excel too soon. Large amounts of data take time to copy to the Clipboard. You should allow a time delay before the activation. I use anywhere from 10mS to 2secs.
  11. You don't always have to "store" it. It can be part of the macro. Here's a few lines from a web page loading macro: Get Pixel Color at (1017, 39) Relative to Current Window into %N8% If Variable %N8% Equals "12632256" Break End If If you use it numerous times in the macro you may want to set %N7% = 12632256 then the above becomes If Variable %N8% Equals %N7% I see that you don't care to go this route but it's as quick to type the value as it is to sort out a link to a stored value. I usually copy and paste the value from a similar macro.
  12. The Lock command prevents other macros from starting (other than those started with "Run Macro Now"). The Unlock command releases the lock and allows others to start. If you use the Lock command with the "Wait for.." checked, the macro in question will not start until all OTHER macros have finished regardless of whether they have locks or not.
  13. Normally you add the Unlock command at the end of the macro. Depending on macro design, the bottom of the macro is not always the end eg if you use the Stop command further up. I've never tested the repercussions eg is the player automatically reset when the macro closes for any reason?
  14. When all else fails, read the Help! Yes I assumed it would not. I cannot simulate your problem because I have Outlook disabled as far as possible. I tried a simple test and Lock worked for me using single-letter access keys. Did you add Lock/Unlock to the Alt+0 and Alt+1 macros with "Wait for Running Macros to Stop" checked in addition to the offending macro? Even if the player lock of the offending macro fails the others should not start - at least that's the way it's intended to work at present. I am not sure if, when the blocking macro finishes, that the waiting macro is supposed to start even if the initiating condition has since disappeared. I've found that not to be the case which would be in your favour. (edit) I see in earlier posts you did most of the above Can't you change the activation of Alt+0 and Alt+1? I question having 2400 macros in one macro file. How do you find anything? How many hotkeys can you remember? I don't dismiss the use of Categories but I don't use them at all. I group all my macros by macro file per real-world task. If I used Outlook, that would be in my "Internet" macro file. My graphics macros are in my "Graphics" macro file. Guess where my file ops macros are? You could have a "Daily" file with a selection of the most-used. You can copy in existing macros with different unique hotkeys if you so-wished. I never have more than a couple of pages to scroll through in a macro file so I don't need many shortcuts. The most-used I give hotkeys; the rest have activation "None". I activate by right-click and "Run Macro Now" or select and click "Run Macro Now" on the Toolbar. I've never been close to running out of hotkey choices. You can also go to Pop-up menus if you run out.
  15. No, I meant what I typed,<ALT><ALT>E (should be lower case, e!) which in your example would be <ALT><ALT>10 (you had "1" in your first post). You do not have to use AltD and AltU. That may be more universally applicable but not necessary. I never use anything other than Alt+key or doubleAlt+key. I stated that it may not be applicable in your case since a numeric does not generally indicate a menu item. It would depend if the destination application will take the double Alt. The other aspect is that I've never typed Alt+ a double character shortcut (which was not in the original post). I've no idea if that even works with ME and may necessitate the AltD and AltU. <ALT><ALT>10 will probably simulate typing "<ALT>1" followed by "0". There may be issues with the Lock command.
  16. What do you mean by receiving commands? There are limited options of telling ME to do something from an outside source. Are you referring to manually initiating a macro in these circumstances? You can autorestore hooks in Options/Preferences or as a command under Macro Express in the editor (the latter will not help initiate the macro).
  17. For the second part I would be inclined to use ASCII File Process - that will automatically split the line at "," and put the two items into two array values. If you already have the code written for a text file, use the Variable Split String command.
  18. One neat trick that probably does not apply in this case is to use a double Alt for the running macro. Let's say the running macro has to open a dropdown menu activated by Alt+E but that is also a hotkey for another macro. For activating the menu, use AltAlt+E (<ALT><ALT>E). The menu will drop but the other macro will not run.
  19. Just putting forward a more global view of the issue in programmers terms. The fact there is even a discussion about whether one should have a space or not in a variable says it all. Would that guy be related to the one at IBM in the 1940s who was alleged to have said "I think there is a world market for maybe five computers". A few years later some apparently deaf scientist at Bell invented the transistor. OK you weren't talking about IBM or transistors; let's call this one a rant.
  20. OT but what the heck. I've migrated over time to leaving out spaces in variable and folder names, mostly. MS did not help much by having paths like "Program Files" and "Documents and Settings" so some of the time you still have to figure out if a "%20" or path in quotes are needed. Long-term, variables are likely to become more and more literal to accommodate the general public. As I've mentioned a few times in other threads, any sort of syntax is counter-productive from the human perspective. Machine code is the pits; verbally telling your computer what to do/needs to be done in any language or dialect is almost as good as it gets. We've moved on; who cares today about machine code other than a few people in the industry?
  21. Text File Process in Files/Folders You can use Internet/Web Site to open the page, or open FF and Text Type the URL in the Location Bar. You also need some means of telling the page has loaded - not always essential but ensures one page is loaded before the next URL is activated.
  22. Remember we are talking about Internet Explorer, not Windows Explorer. I'm not even sure if you can run an exe from IE due to browser security. In the context menu registry key for IE you normally have a default subkey with the URL of the page the script is on (assumed normally JScript etc) and another subkey DWORD "Contexts" set to 0x10 (16) to so the context item appears when text is selected in the browser. It's beyond my current knowledge. I have no idea how you get ME to run, especially with all the switches which may not be recognized by Javascript. Could be you go to Javascript to run a bat file to run the ME macro. (edit) I got as far as opening Notepad from IE, whoopee doo! Key HKCU\Software\Microsoft\Internet Explorer\MenuExt\Macro Express subkey default, string, file:///D:/Temp/jsietofilejohns.htm subkey Contexts DWORD 0x10(16) Change key name and filepath to suit jsietofilejohns.htm: <html> <head> <script language="JavaScript" type="text/javascript"> WshShell = new ActiveXObject("WScript.Shell"); WshShell.Run("notepad"); </script> </head> </html> (edit2) Got to 2nd base by running an .mxe file, per above but: WshShell.Run("file://d:/Temp/Hello.mxe"); Same file in MEPro folder: WshShell.Run("file:///C:/Program%20Files/Macro%20Express%20Pro/Hello.mxe"); (edit3) To make things more generic using the MEPro folder the above settings would be: Key HKCU\Software\Microsoft\Internet Explorer\MenuExt\Macro Express (to make "M" the shortkey, name key "&Macro Express") subkey default, string, file:///C:/Program Files/Macro Express Pro/jsietofilejohns.htm subkey Contexts DWORD 0x10(16) (selected text per requirement this thread) (see this link for context logical OR settings) jsietofilejohns.htm: <html> <head> <script language="JavaScript" type="text/javascript"> WshShell = new ActiveXObject("WScript.Shell"); WshShell.Run("file:///C:/Program%20Files/Macro%20Express%20Pro/Hello.mxe"); </script> </head> </html> There may be other and better ways of doing this. As stated previously I have no idea at the moment how to run an .mex with Command Line parameters. I don't think you can run Command Line from Javascript for security reasons.
  23. You can use Text Box Displays (configured to show variables of interest). If you use the standard TBD the macro will stop at that point until you click OK/Enter. That's my personal preference. You can take your time, works in normal running or editing modes and you see the entire length of text variables. It's a bit tedious listing the variables however.
  24. I was curious to see how one could find the text so I ran a quick test. You need to find a cell you know will have text and select it (Text Type Ctrl+G followed by cell ref/Enter). If you move the mouse to the text cursor, it will be the top left corner of the cell. You can adjust mouse position vertically to the centreline of the cell and then run across the cell a few pixels at a time with a Repeat loop until you find a colour not equal to background or gridline. You could also format the cell (Text Type Ctrl+1), go to Font tab (Text Type F), move mouse to colour bar which will always be in the same place relative to Format Cells window and get the colour (or get colour at specific coords). Then Text Type Esc to Cancel. I have an old rev of Excel so there could be differences.
  25. Did you try the "Install as a Service" version of ToolTipFix? That is permanently running and you should never see the problem again.
×
×
  • Create New...