Jump to content
Macro Express Forums


  • Posts

  • Joined

  • Last visited

Posts posted by paul

  1. I'll push for the tewakme fix (although I hope that's not neccesary, since requesting the download, install, and configuring of even a tiny application on two dozen users' machines is going to be a beurocratic nightmare)

    You can equally well create a very small .reg file containing the registry mod required, then either distribute it or perhaps even update your users' registries remotely.

    If you need help in constructing the necessary .reg file, let me know.

  2. Yes, whenever you press a key, at least 2 events are generated - a keydown event and a corresponding keyup event. And when you introduce enhanced keys (e.g. Alt, Ctrl), then you get additional keystrokes for the enhanced keys.


    I'm currently trying to add a new feature to our Pgm Library where I can trap and control almost any key stroke (excluding Ctrl-Alt-Del and Pause/Break). It's remarkably difficult to do even with a global hook. It may also be more complex because of course macro Express also hooks into the keyboard - I'm not yet certain about this.


    An additional consideration is whether a keystroke is repeated, as in your dddddddd. here timing plays a part, so it becomes even more difficult!

  3. Noggin wrote:

    I don't use Explorer, ever. After all these years they still do not have an icon for creating a new folder. I use old PowerDesk which will also copy the full name and path of a file to the clipboard, making this sort of thing a breeze.

    FYI, I use a product called Directory Opus, whose users generally have the same sort of contempt for Powerdesk as you do for Explorer (BTW, I am nothing whatever to do with the makers of DO).



  4. Paul,

    How did you add that note taking facility to some databases, and allow fonts, colors, etc. Is it available to view?


    Sorry, this was nothing to do with Macro Express. I was simply making the point that often fancy features are not of great interest to users. To answer your question, I created a form using a rich text box and wrote the necessary code to enable fonts, paragraph styles and alignments, etc. Nothing of any great difficulty.

  5. It would also be neat if formatting would be allowed inside of prompt and display boxes, ie to allow fonts, color, tabs, left, right, center justification, bold, italics, and underline of the text, and also to allow manual sizing changes to prompt boxes (as is allowed for display boxes).

    I think what you're asking for here is probably overkill for a data-entry form - in my experience such matters as colour, justification and fonts tend to get in the way and annoy an experienced data-entry person. I think your ideas are better suited to the presentation, rather than the gathering, of data.


    Actually I've just added a note-taking facility to some databases for a client in multiple locations, and I did allow fonts, colours, etc. Nobody has used any of these fancy features!

  6. You can make all sorts of fancy input dialogs using other applications controlled from ME. Personally I use notepad and text files a lot. Quick to open (assuming notepad is default for .txt files) and easy to look at the data in the file. For a multiple input I would do the following:


    A nice simple solution for one's own needs, but probably not foolproof enough for a generalized facility <g>!

  7. A purely personal opinion (is there another type <g>?). I actually prefer newsgroups for visual reasons. You get far less noise and fluff with text as compared with HTML - just look at the amount of wasted space in each message.


    But if more people get to see and use this techmology (and that's obviously the case) then I'll grin and bear it!

  8. IMHO this is one of ME's weakest areas. I'm sure Insight recognizes this because many new releases include so-called improvements to this feature.


    Even waiting for pixel colours to appear in specified location(s) works only until the owners of the web page in question decide to replace what previously worked perfectly with some newer version (which of course often doesn't work as well).

  9. Assume you've got M1 running and would like M1 to be interrupted while you

    run M2.


    Now, you can't actually run 2 macros at once. However you could easily create a new window via a shortcut (say a command prompt where the window title is "Special", and which doesn't actually do anything except EXIST). You could fire off this window via a click or double-click.


    Now have macro M1 include in its loop (the one that repeats 9999 times) a check for the existence of a window called "Special". When this window exists, M1 stops refreshing the web page and fires off M2 instead. When M2 has completed, M1 closes the window called "Special" and resumes its Web page refreshing.


    BTW, if you use either Opera or Firefox as your browser instead of ghastly, old and exploit-vulnerable IE, then either of these come with the ability to configure any specific page to "Refresh every nnn timeinterval". This might be a superior approach.

  10. And use it to make more complex forms, so I didn't have to present users with a multiple-choce single-select menu, followed by a check-box menu, followed by a prompt-for-variable. (but that's "front end" not "back end").

    I'm not clear about your use of "front end" and "back end" - and does it really matter?

    On the one hand, we're using VB to carry out some processing, e.g. string manipulation, and return the results to ME.

    OTOH, we're using VB to solicit some input and return the results to ME.

    What am I missing here?


    The usefulness of a VB server will be increased or decreased by the power and ease of use of the interface between ME and VB - i.e. how do a macro express its commands to VB without a million interactions between ME and VB. Perhaps an Ascii file of commands, data and parameters might be a good way to go - do you have any thoughts on this?


    Accessing VB through the PGM suite- would it be possible to create an EXE of the VB functionality I created, or would VB need to be installed on every user's machine? I know I could create an .exe myself and just have ME run it, but I mean the link-in functionality provided by the PGM suite.

    You know, there's no such thing as a pure standalone .exe program from VB, or even from C++ for that matter as far as I know. Both require a runtime library - and we distribute the VB one together with PGM library.

  11. Although we haven't added this facility yet (Joe and I are still discussing possible user requirements), we can readily add a data form capability to our PGM library. One way this could work is for a macro to provide a list of "questions", run our form macro and get a resulting list of responses. By "questions", I simply mean things like "Enter your name" or "DOB" or "Name of grandmother". So if you supplied 3 such "questions", you'd get back either one registry string value containing the 3 strings delimited by some user-specified character, or 3 registry string values. This could be made more sophisticated by allowing specification of data types, validation rules, etc. Any feedback you might have on this would be useful.

  12. Is there any way to get multiple user inputs in one box (to fill different variables) without having to have separate prompt boxes and then close each one in order to get the next user input? I can see that a diaplay box could show the previously entered input, but that still needs to be cleared before the next prompt for input is displayed.

    Only using a simplistic approach like this:


    Solicit: Enter your name and password, separated by a comma:

    Receive: pault,freddie


    Then write some logic to split this input string into 2 variables.


    And now that you know my password, I'll have to kill you <g>!

  13. With the PGM macro suite- do all the macros need to be installed, or only the relevant ones?

    In our documentation we show exactly which macros are needed as a core set. I don't have our Help file in front of me at the moment, but I think it's no more than 20 or so macros that are needed.


    What sort of functionality do you envisage for the VB back-end (which is essentially what out VB server is)?


    And I don't really see why you'd need Perl as well (speaking expertly with an almost complete ignorance of Perl <g>). Text processing in VB can be very fast indeed (not by doing things like strA = strA & "new string", but rather by using byte arrays).


    Also (again not yet implemented) I've found a way of disabling any keyboard or mouse input (except for Ctrl-Break) while a macro is running (again by using VB with a couple of API calls).This would be very useful when running macros that are sensitive to which window currently has the focus.

  14. I doubt you'll get anywhere using PostMessage - its implementation in Macro express is barely documented, is not supported by Insight, and is really not very useful. I spent some time experimenting with it, and came up with 2 uses, one of which is of no use anyway <g>!


    The useless one - I was able to bold and centre text within a ME dialogue box.


    The useful one is built in to our PGM library. I have written a full-blown server in VB6, which allows a macro to do the following:

    - specify a maximum amount of time to process the request

    - unload the VB process after a specified amount of time, or not at all

    - receive a signal from VB when the process is complete

    So far we use this only for returning a number raised to some arbitrary power, e.g. 2 to the power of 8. Joe did attempt this in ME alone, but it proved too difficult, whereas in VB6, of course, it's literally a single statement.


    This environment could easily be extended to allow for array processing, or indeed any user-written functionality at all since I have created a structure to allow the addition of user code (but we've not yet published that capability).


    In your case, it might well be possible to develop a facility to return the contents of list boxes or combo boxes. There might have to be some sort of initialization processs, so that in Macro design mode you could instruct the server which listbox to use (or perhaps this could equally well be done at run time?). Perhaps you could flesh out your requirements somewhat so that I can think about this some more.

  • Create New...