Jump to content
Macro Express Forums

Cory

Members
  • Posts

    4,207
  • Joined

  • Last visited

  • Days Won

    61

Everything posted by Cory

  1. What I do is to use the ASCII File Process but in the command I start at record N1 and process one record. It's a neat way to go in and grab a specific line. Then outside I have an infinite repeat loop that increments N1. This way I can control the logic better to recover from a failure. So put a repeat loop around the ASCII File Process and the actions you are preforming and include some test for success. This way you can keep repeating this until T1=Success and once it exits the loop on this criteria it goes to the master loop that increments N1.
  2. Jason: That's weird. I have a sample macro that on the surface looks just like this but returns false for everything. I'm going to have to look very carefully at both and get back on this one. Must have done something stupid and assumed it was a logic problem. Thanks for the sample. Jason do you know of a simple plain English description of how different condition combiners are processed?
  3. Thanks JohnBoy. I know I can do it by nesting but there's a complication that's difficult to explain having to do with the action performed in the true and false (Else) sections and even though I can use nested it's inelegant and I figured I should know how to combine these. I learned it once when I took a class in Pascal but that was 20 years ago now! No worries, I can do some experiments that will tell me what I need to know. Thanks!
  4. Generally not. For instance a web browser is the same pixel dimensions on either resolution but I have one I'm working on right now where inexplicably the beginning of a sometimes invisible progress indicator moved over one pixel on a different machine. Strange things will make minor differences so hitting the middle of a button is usually easy but grabbing the edge of something or finding a black pixel in text can be tricky. Usually I write a simple macro to check the display to make sure everything's aligned before running the real macro and save the locations in the local registry instead of the macro. Also I've made some macros that will scan an area with Get Pixel Color tests or have it scan a region instead of looking for an exact pixel. For instance the progress indicator I told you about that moved... I know scan a line of pixels looking for the edge of the progress indicator. As soon as it sees the edge it will bail. But a good safeguard is to add a Get Pixel Color after your mouse move and before clicking. If it's a gray button you're looking to click and the pixel color is something else you're in trouble.
  5. I'm having a block on mixing ANDs and ORs. Three cars, two drivers. I thought it would look like the following but it's not working. If Car = Corvette OR If Car = Porsche And If Car does not contain Blonde Wave Else Don't wave Endif What I want is the following. How would you structure it? I know I could nest but I don't want to "Don't wave" twice. Corvette with Blonde = Don't wave Porsche with Blonde = Don't wave Ferrari with Blonde = Don't wave Corvette with Redhead = Wave Porsche with Redhead = Wave Ferrari with Redhead = Don't wave And if someone could explain how ORs and ANDs combine I would appreciate it.
  6. Kevin is correct, I made a mistake and should have used an else in the first IF and stuck the second half in there to avoid the situation you pointed out.
  7. I suggest Outlook Express to test your server settings. Quest will help you get it configured and once it's done use those settings in ME.
  8. Saving to excel will require you interact with the program and this increases the risk of problems. Excel natively understands TSV so all you need to do is open the results file with Excel. What could be easier? But if you do want to take this route create an entire row in the variable and paste the whole things all at once. Excel knows what to do with TSV because that's it's native interchange format for the clipboard.
  9. But my suggestion still stands and would work perfectly for you. If Range 1 Do thing1 Endif If Range2 Do thing2 Else Do thing 3 Endif There is no escape from this. No matter what the case either thing 1, 2, or 3 will be performed. If you look at it closely I think you will realize this satisfies your needs completely and succinctly.
  10. Well it's just like it says. It tried to authenticate and it failed. Specifically with TLS which is kind of like SSL encryption for email authentication traffic. I don't know it ME supports TLS and this mail message indicates that you never tried to or responded to the start of TLS. It's probably requiring this because you're coming from a different domain. Since you are on quest can't you use their SMTP server? Things are getting tight out there. This is your login for Microsoft? I doubt that's correct. Maybe that's your problem. You need to use your live.com credentials.
  11. Why are you using 465, is this an alternate port? You realize you can't use just any port, right? Many ISPs block SMTP traffic. Did you try to make a telnet connection to test? What was the error? Are you able to send email with Outlook Express? You mentioned you were on an old version of ME. Have you updated your software? Really you should start a support incident with ISS.
  12. Meh... you can figure that out. But if it's possible to have an interruption you should instead output a record for each iteration. This is often the safe bet.
  13. How did those suggestions I gave you offline work out?
  14. Not sure I follow. In the simplest form a case statement is just like an If. Often in fact when I see case used it's actually fewer lines to do a series of ifs because it eliminates the switch-endswitch commands. If it doesn't meet the criteria what's within won't get run. Here is a good writeup on the Switch command. It's my understanding that if there is a distinct instruction for each case If works just the same. When Switch becomes more powerful is when combinations of overlapping criteria come into play. EG if you were making a string of text from car specifications and the same thing was done each time one had 8 cylinders it wouldn't batter about the color or manufacturer for which other things can be done. IOW it can simplify more complex matrices that that would become confusing with nested Ifs. So the Else command wasn't working for you? I get the feeling you're making this much more difficult than it needs to be. Why don't you try writing in plain English what you are trying to do and I'd be happy to give my 2 cents.
  15. I have a coupe clients who have bonked into an interesting problem you all might want to be aware of. Microsoft implemented SPF on their inbound servers and I think others like AOL and Yahoo did too. SPF is a new filter protocol that looks back at the DNS server of the sending domain for an SPF entry and if the sending server’s IP isn’t found it blocks the email! Usually if it’s something like utahconnect.com (a fictional ISP in Utah) the ISP has made the necessary changes but for user who have their own domains who use their ISP’s SMTP server it’s a problem and they need to use the SMTP server of whoever hosts their domain. In a nutshell if you mix things up at all you're likely to have problems. SPF requires that you use the SMTP server specified in your DNS record. Even if you auth on a different server it won't matter. I mention this because I often use odd addresses and such for sending reports from ME and now I have to do it according to the book. There's more too it of course and I've boned up on it a bit so feel free to ask questions if you like. On the plus side if everyone gets on board with SPF it could be the end of spam as we know it.
  16. But you can add a macro to do this. Simply log all the runs in your normal macro and then have a macro that runs at startup. I would start it with an option for a human to cancel and have a timed default so that if a human doesn't say "No" in 60 seconds it will execute. In there it can check your logs and see if a job had been performed in the last 60 minutes, or whatever logic you have, and if not launch the missed macro. And of course there are many ways to log and make these decisions of course, this is just a general suggestion.
  17. Your code is a little difficult to follow since there aren't any comments but i think you just need to add an 'Else' to your Ifs. Or perhaps your last IF. I see lines 1-24 are one big IF for cases where T78 is between 00100 and 01996 and a second big IF for 26-37 where T78 is between 10000 and 69999. If you wanted a dancing monkey if T78 wasn't in either of those ranges add an else at 37 and run Dancing Monkey at 38. This will push your last Endif down to 39.
  18. Does anyone know an easy way to get a list of printers? I need to present the user with a list to select so I can set it in an INI file. I know about the Set Default Printer and although that's the list I need it's not the function.
  19. Funny you should ask. At lunch I was reading MaximumPC and found a free one in their "softy awards". Check out KeePass. I don't know if it can defeat keyloggers but at least it keeps all it's data on the hard disk encrypted. I'm sure if you ask they would be able to tell you if they can avoid keyloggers. However I'm not sure it's clearly known how all the keyloggers in the world work so that might be a loaded question. There are many other pay apps for this as well, you might shop around and ask the same question of them. Again though, I think your tack is wrong. I suggest you invest in good anti-Virus/anti-spyware. Perhaps it's not spyware you're worried about but rather parental controls or corporate monitoring software? IOW anti-spyware isn't going to do it for you.
  20. OK. But I'm not going to read all the posts so forgive me if I missed something in there. It's just that there's a lot there that's hard to follow especially with that word wrap problem. I would have two macros, one to set the start letter, end letter, and serial number and one to actually paste the values. The first would be launched by CRTL+Num2 and would store the values in the registry. Also it would seed from the last time you ran it so you only have to type the changes. The next one CRTL+Num1 would read those reg values in each time you ran it, pad out the serial part, and paste. Then increment the serial and store in the registry. Simple. Like I said I didn't read the posts so tell me what you think of this and how it doesn't fit your needs. Serial.mex
  21. Well my feeling is if you want to avoid keyloggers don't install them. Seriously I can't think of any way to do what you propose. In order to enter that password one has to type it in. You might try and confuse them by doing something like typing half the password, tabbing ahead, back, End, and then the rest of the password but that's a pain and if a human ever scrutinized it they would probably figure it out. And if you wanted to hide the file you could always create a simple HTML file with ME3 that would make a file with an instantaneous redirect so they wouldn't see you typing in the URL but like you say if the title of the window is bankofamerica.com well... I think most of these loggers probably operate on the same principle that ME3 does so I don't know how one could avoid it. If it was a controlled enough environment you might be able to maintain a list of approved processes and if the user is running anything unknown report it and don't run. However many appear as the generic service host so that's no sure bet either. Or, again if it's a controlled environment, you could have ME3 verify that the company Anti-spyware software is running and up to date. Wouldn't it be better to use one of the commercially available secure website applications? I mean why reinvent the wheel? Mehh... All hare brained ideas really. I think you're at an impasse.
  22. Controls are in proper Windows applications and you will never find one in an HTML document. Even though this is a limitation I do a ton of stuff in web browsers and have always been able to make things work. My first approach is to see if I can somehow use offline files. That is the actual HTML in the file to extract links and such but with so much Java and other scripting languages this rarely works. Next I try Text Type commands. You can often tab X number of times to do what you want. Also I use CTRL+F to find label text then tab. Mouse moves and clicks are often easier but if you distribute the macro or make any changes to toolbars or if the web page graphics change a little you're hosed. Many things change the graphic alignment in web browsers. If you do use I suggest first setting a base reference point. At first it will be 0,0. Then add this to all your stored mouse positions. You see usually the change in a web page will all the features in relation to the window but not each other. This way you can adjust for a new ad banner or whatever in one place. Also I've used stored offset or mouse positions. I store them in the registry and create a simple macro to have the user point out all the buttons or elements I need to move to and save that in the registry. Now each machine can have it's own independent values and use the same macro script. Also dont' forget tehre are a ton of key combos to use in web browsers. For instance F6 to get to the address bar or F5 to refresh, things like that.
  23. I've only used the feature to run hidden a few times but it has always worked for me.
  24. I have had cases like this and in fact I am working on one right now. The window is Java so I can't interact the same way I usually do and something like View Source will show nothing useful. When a region of the screen updates I found that if I mouse click in it and then do a CTRL+A it highlights all the text in that rectangle. I then take off with that and do my thing. So you might try that. But there are many different scripting languages and ways of doing things so I can only make guesses for you. If, somehow, you could show me one or something like it I could probably figure it out. Normally my first approach in these difficult cases is to figure out how a human can do it then go from there. So how can a person highlight this screen for you? I've even experimented with using OCR. I have a simple OCR pen and the software allows one to paste a graphic in and will return the text to the clipboard. This way you can just copy a region of the screen and have it 'read' it for you!
  25. I'm happy you are having success, congratulations. There is something very satisfying about making these boxes do some real work for us eh? When you're ready for the FTP let me know and I'll give you some ideas on how to do it. There are several ways to send yourself SMS (cell text messages) to your phone. There is software you can command, web portals and email. I like using email because ME has a nice little sendmail feature. Most cell phone companies have what they call email gateways for SMS and once you learn the convention you can address the email properly. For instance I'm with Sprint and the convention is [TelephoneNumber]@messaging.sprintpcs.com. Here's a list of common ones. Don't forget the limitations of SMS of course and try to send yourself a book.
×
×
  • Create New...