Jump to content
Macro Express Forums

Cory

Members
  • Posts

    4,207
  • Joined

  • Last visited

  • Days Won

    61

Everything posted by Cory

  1. You could create your own ICO file with text and an icon for each macro. It would have to be short and you would need to use the large 64 pixel icons to be legible but it does work.
  2. No idea other than I run ME on about ever version of Windows except ME and it works fine. Even with Logitech driver. It's best you start a support incident with Insight.
  3. You get a gold star for your Rocky Mountain Way(s)! There is some weirdness and definite limitations with the Controls capabilities in ME. Believe me, I've found a few. I'm not sure what your problem is and I'd need to ponder it some more but there is one thing I think you might not be 'getting' about controls. Drum roll please... You do not need to activate your window to interact with the controls. In fact they can even be minimized in the system tray! If you check out the calculator tutorial there's an example someplace that shows how it can be used for calculations even though it isn't visible! It might help to reduce your complexity by taking any superfluous window activations out of there. I see in your script you have already eliminated most of these lines. If it were me I would only have the enabled lines, no need for the rest. C1 looks really deep. More so than most. This might be a problem. Also do you have more than one window with the same name open? Now here's something I don't understand... Why do you double click on C1 then capture the text of C1. Why don't you just capture the text of C1. If you need it to change or something then I suspect you need to put a delay in.
  4. That's exactly the method and concern I outlined earlier. Maybe a combination of registry to find path and file version will be the trick. I can figure something out, I was just hoping that someone who had experienced this before might have some suggestions. Another possibility is to have the user manually set a preference. Might be the easiest.
  5. I don't think the registry is difficult but I still don't see an elegant method in there. What I mean is there isn't a key I know of that says "Current Office Version". When I look at it now on my machine I have several folders beneath Office like 11.0, 12.0, 8.0, 9.0, and a bunch of other stuff. But there's no "If reg folder exist" so I'm not sure how I would efficiently make a determination. Do you know of some key or something I am missing? I mean how would you do it? The more I look at it the more I think I need to query the file with "Get Version of" and point to "Outlook.exe" or whatever. The only monkey wrench here is the install path is a moving target from machine to machine. This got even more difficult now that 64 bit systems have an additional "Program Files (x86)" folder. Ug. But I could probably look in all the common places and ferret it out. I see some scripts on line as well so that might be the other solution but I was hoping to do this in ME. And I'm lazy which is the whole reason I posted here... to avoid a bunch of research! Thanks
  6. For one client we have enjoyed one version of Office for some time but now we have a mix. Certain macros need to be tweaked for the different versions so I would like to use ME to determine which version of, say, Outlook is installed and perform slightly different instructions. I have some ideas how I might divine this but I was wondering how others addressed this problem.
  7. Yeah, what Kevin said. I often find that the Index method works better but then again the index method has shortcomings as well so I often try one then the other. Usually between the two I get one to work. And I'm doing well, thanks for asking. Just overwhelmed with troubleshooting computer issues in our modern age. VoIP phones, tape drives, routers, and firewalls... I have several cool macros to write but too many emergencies! And with QC falling in almost every sector I can't keep up with the issues from Linksys or vendors who release 2 service packs in 4 weeks that I have to deploy.... As a genius prophet once said "I can't complain but sometimes I still do" as it keeps me in the black but it does add to the "Wearing and Tearing".
  8. I don't know if this helps but there are applications that allow one to 'iconize' applications ot the system tray instead of the Taskbar. PCMag has one I was just looking at called TrayManager. Does many other things as well.
  9. I don't know about silent running Outlook from a command prompt but I'm guessing you could use VB Script to silently 'load' and interact with Outlook. Also I'm almost certain you can not write directly to the PST files. They're very large database files and if you meddle with any part of them the pages will become inconsistent and therefore considered corrupt by Outlook. BTW sometimes you can manually create delimited text files and automatically import them into Outlook. Just export the task or what have you, determine the data format, and re-import. Works fairly slick.
  10. Or you can copy part of string from T1 beginning at one for two characters back onto T1 then replace all instances of the slash with nothing. That gets it down to two lines at least <TMVAR2:10:01:01:001:002:><TMVAR2:21:01:00:000:000:/>
  11. I'm a hired gun. If you're interested contact me via PM or my webpage. I can either create turnkey solutions or provide a solution with training. As for your web page waiting there can be several problems and solutions and it greatly depends on what type of scripting or active content is running in the web page. As far as grabbing some text it again depends on the web page but usually I grab the raw HTML and extract what I need from there. But here again it depends on the web content. Perhaps you could give us a URL to take a look at?
  12. Ah... I learned something today. Thanks Kevin. See, that's what I get for assuming. Although in my defense I think someone told me as much some time ago but I can clearly see things like a spell check would be missed by our initiator. BTW, my apologies for sidetracking the topic. I'll stop now!
  13. I think my solution will work for you, assuming it's normal HTML of course. If you look at the macro link link on this page of my web site in HTML you will see it looks like this: <a href="Multiple_Choice.mex"><img src="MEPlay.gif"></a> I took out some of the additional parameters for clarity but this still works. Now it's really easy for me to see that the link (href) will take me to Multiple_Choice.mex. Of course that's a relative link so normally it would look like a URL, EG, http://bluepointdesign.com/macros/multiple...iple_Choice.mex. Isn't this URL what you're extracting by hovering?
  14. Ahhhhh ShortKeys. No wonder I couldn't find anything about it on Google. I started with Keyboard Express a very long time ago but I've never used ShortKeys as I assumed all the functionality was included in ME. Is this not the case?
  15. An alternative to tabbing is to "View Source" in your browser and parse your hyperlinks from the HTML. But of course you need to understand a little about HTML to make this work for you but even if you don't understand HTML it's pretty easy to learn how to identify a hyperlink attached to a graphic. In fact if you give me a URL I'll show you exactly how.
  16. In situations like this, if I understand you correctly, I will break things down into separate processes. For instance the first macro will harvest the data then the second macro will massage it to my liking. If you do this you can create a file to store all the data from the harvester and life is cake after that. I find that sometimes it makes life and timing a lot easier. It's something to consider. I'm not sure what your different data screens look like so I'll assume you have a screen that is one record with several fields all of which you want to snatch up. Often newbie users will Alt+Tab back and forth between the apps and this works fine for a quickie but if you want to push any real data you need to have a more sophisticated approach. I wrote a harvesting macro for a bank a while back that's a prime example. It was grabbing order record from a terminal emulator as a way of harvesting the records from an antiquated mainframe system. Here we went screen by screen grabbing data and what I would do is build a TSV file in a variable. BTW a Tab Separated Value (TSV) is like a CSV but with tabs. The first step was to create the special ASCII characters for tab and CRFL. You can steal my macro to do that here. In my macro the Tab is T96 and the CRLF is T95. So let's say I went thru the first page and harvested T1 thru T10. I would then append my accumulator variable T11 with %T1%%T96%%T2%%T96%%T3%....%T10%%T95%. You see? I just created one line of a TSV file. Now once you have repeated this all the times you need you can dump the entire contents of T11 to a file or to your clipboard. If you use the clipboard all you have to do is paste it into Excel and it will all be formatted properly for you in columns and rows. If you go the file route you can simply open it with Excel. The benefit here is that you're not bopping back and forth between apps and you're not writing to disk. For all practical purposes all the processes besides tabbing between fields in your source app is instantaneous. Once I turned this corner with my macro development I never looked back. There are no timing issues and life is simple and predictable. If this isn't sinking in your noggin just let me know and I can write a simlple example for you.
  17. FWIW I have never heard of it and don't know anyone who uses it.
  18. You're not giving us a lot to go on but one thing to be aware of is that many of the games are employing foils to automation software to thwart the rampant cheating. I'm sorry I'm not giving you much help but I thought you should at least know what you might be up against. If you make a very simple macro to move and click the mouse and it works in other applications but not your game then this is most likely your problem.
  19. Cory

    Debug bug?

    Dude, that was post 999! Contrats! I did not know of that preference but I don't think it's a solution as I would rather not have it log for all the macros. It seems that the command should cause the log entry on a per instance basis. I've taken to creating a debug mode for my macros. Basically I put all my debugs in an IF which I can control with one variable. They way they're normally turned off but if I need them I can quickly re-enable them. It's a little clunky but it works. Do you have any better ideas?
  20. Cory

    Debug bug?

    Dude, that was post 999! Contrats! I did not know of that preference but I don't think it's a solution as I would rather not have it log for all the macros. It seems that the command should cause the log entry on a per instance basis. I've taken to creating a debug mode for my macros. Basically I put all my debugs in an IF which I can control with one variable. They way they're normally turned off but if I need them I can quickly re-enable them. It's a little clunky but it works. Do you have any better ideas?
  21. In the help file it says: But when I try it no initial or closing entry is made as described. It does however appear to log error is encountered. Logging messages appears to work fine and I could use that instead but it seems silly. Am I doing something wrong? <LOGERR:N><LOGFILE:YY:A message><TBOX4:T:1:CenterCenter000278000200:000:ProgressThis is my macro! > BTW this happens on older versions A and B as well so I don't think it has anythign to do with the log file size bug that was just fixed.
  22. Thanks for looking in on this Kevin. I tried as you suggest but it doesn't work. I put a beep in before the Wait For Window and it never beeps. IOW it's still stuck in the Launch command. And the Excel window title appears moments before the password box appears and is apparent in the background the entire time the password box comes up. It seems to me that the Fail to Load option isn't satisfied probably because it sees Excel is running in the processes. But whatever it's using to test that it was successful it doesn't see and keeps waiting for. And what's with the 122 second delay? Seems to me that should be some kind of indication of what's going wrong.
  23. Per Joes book starting on page 288 talking about the If Program Fails options.
  24. Ahhhhhhhh now this was a fun one! Thanks for the challenge, I learned something by it. I tried reproducing your problem and was successful using Excel 2003. I’ll spare you the half hour of troubleshooting but what it comes down to is if you use the Program Launch by default it waits for the program to finish loading before it moves forward. I created a Launch for Excel with the file name as a parameter and added some debug. The problem is that until you type in the password ME doesn’t think Excel is done loading. I had put a Wait for Window Title in with a max of 5 seconds but the macro kept going, and going, and going… Way longer than 5 seconds. This is what tipped me off. Now I can think of a few workarounds. But the approach will be different depending on how you use the Activate/Launch Program command. Personally I just stick the file name in the program field and rely on the file association so when I distribute I don’t have to worry about programs having different paths but it doesn’t work right here. You see in the advanced tab there is an option where one can set the continue option “If the program fails to launch in the specified time:” but when I set it to Continue Macro it didn’t work. When I specify Excel and add the file path and name as a parameter it works. Also if I specify a file that does not require a password it works. But if I put the file name in the program field in Launch Only and there is a password protecting the file there is a 122 second delay before the If Program Fails action kicks in. Every time exactly 122 seconds. I don’t know why this is but I think it’s a bug. Also Joe makes some interesting comment about this in his book on page 288. I’ll have to ask him if I can make a citation. So I think your Activate/Launch is stuck and I think by changing the command parameters around as I described you should be able to get it to work. The key is understanding that this is where the pause is happening, not later in the script. Maybe there’s something I’m missing here and Kevin may be able to better comment. Maybe it’s not a bug but rather my user error.
×
×
  • Create New...