Jump to content
Macro Express Forums

Maybe A Bug?


Lars_Sandberg
 Share

Recommended Posts

Hi, i'm using ME 3.5b and created a macro that should react automatically when a certain window in Spamcombat appears:

 

Keystroke Speed: 30 Milliseconds

Variable Set String %T1% from Window Title

If Variable %T1% = "G-Lock SpamCombat"

Delay 1 Seconds

Text Type: <ALT>c

End If

 

This macro starts when a window containing: "G-Lock SpamCombat" is on top. It is the intention that the macro only should close a window when the title is exactly "G-Lock SpamCombat" (the IF statement)

 

The strange behaviour is that, when I try to close/ minimize the main program with the title: "G-Lock SpamCombat [uNREGISTERED VERSION]", then that window just reappears again, that happens even if the code is reduced to following:

 

Keystroke Speed: 30 Milliseconds

Variable Set String %T1% from Window Title

If Variable %T1% = "G-Lock SpamCombat"

End If

 

Notice that the If statement now are empty. In the log that ME creates, I can see that it was the macro above that was activated.

 

It is very odd that I can't close the window, without my macro opens it again.

I'm using W2K as OS.

 

regards Lars

Link to comment
Share on other sites

The macro is bound to run when the unregistered version window appears (activation is based on partial title only).

 

As a long shot answer, protection programs (antivirus/spyware/firewall) are usually protected from malicious interference by other programs. Could it be that ME is seen as hostile and SpamCombat is restarting the window to protect itself?

 

Does this phenomena occur using similar macro with other standard progs on your pc?

Link to comment
Share on other sites

The macro is bound to run when the unregistered version window appears (activation is based on partial title only).

 

As a long shot answer, protection programs (antivirus/spyware/firewall) are usually protected from malicious interference by other programs.  Could it be that ME is seen as hostile and SpamCombat is restarting the window to protect itself?

 

Does this phenomena occur using similar macro with other standard progs on your pc?

 

Yep, that's correct, but the IF statement ensures that the macro actually only closes the window when exactly "G-Lock SpamCombat" appears.

 

By the way, the minimize all function in windows works correctly, so here I can close G-Lock SpamCombat main window.

 

I can't see how SpamCombat should detect ME as a malicious program, since it must be unrealistic to manage such a "database" of malicious programs.

ME just types in keys in this example. My macro closes the unwanted window, advertizing for the software. But as mentioned I can't close the main SpamCombat window with minimize or close, without it pops up again.

This behaviour I haven't seen with other programs.

 

By the way, SpamCombat is ment to run unregistered, but with limitations:

http://www.glocksoft.com/sc/index.htm

You or others could eventually try.

 

Regards Lars

Link to comment
Share on other sites

Hi Lars,

 

I mentioned the running of the shortened macro because when you noted it was logged as running, you did not qualify it as an expected event.

 

Protection programs regard ANY program/file that tries to affect their operation as hostile, no list required! That is why you see many pc forum posts from people trying to uninstall that type of software after it goes wrong. It resists deletion/uninstall.

 

I've not had problems with ME and my various protection programs. Those seem to consider ME's actions the same as user actions. It does not mean it could not happen and it may depend on the software writer's experience. As I said, it's a long shot. You do not seem to have the problem with any other software sooo....

 

The only other thing I can think of is to write the macro over again from scratch as a completely new macro in a new macro file on the offchance that there is something you are overlooking in the existing one or some other macro is coming into play.

 

later edit

Re-reading your symptoms it sounds to me like something is restarting the application, not just opening the window. It is not clear whether windows other than the main window of this application are open at the time the macro runs.

 

A few more things to try. These may seem trivial but you have not listed what you already tried so here's what I would do:

 

Try to close the window with ME disabled/off. You probably already did.

 

Try to close the window with another macro file loaded (with no relevant macros)

 

Try re-writing the macro as previously mentioned

 

Activate existing macro with a shortcut key or time of day basis.

 

Remove all code from the existing macro so it simply runs and stops.

 

I took a look at the specs for SpamCombat because spam blocking is really a low priority protection. SpamCombat does more than just blocking spam (including virus detection) so it may have more smarts to cause conflicts.

Link to comment
Share on other sites

I got the prog. I guess you are trying to defeat the nag screen when activating via a normal shortcut .lnk . This macro works as an ME startup:

 

Program Launch: "gsc.exe"

Delay 2 Seconds

Text Type: C

 

I have it activating on a shortcut key but if you want to automate it, it could be on a timed or other basis.

 

I had similar problems to your original problem when I tried using window activation. I have a feeling it's to do with the nag screen. Funny though, if the code is just:

Text Type: C

and it is simply activated on window title "G-Lock SpamCombat", a normal window shortcut it seems to work fine. "C" is apparently not active in the main window.

 

later edit

You probably noticed that when the application is running there are actually two open window components of which only one is visible. I also checked with a macro of mine that lists all open and hidden windows. When the nag screen first comes up you have:

g-lock spamcombat

g-lock spamcombat

When the nag screen is cleared you have:

g-lock spamcombat

g-lock spamcombat [unregistered version]

If you try to do anything that is unavailable in the freeware version, the nag screen is brought to the front.

 

I don't use the window activation to start any macros so have limited experience but with two windows up with similar names, I anticipate care is needed. I have one application that runs four open windows with the same name and if you are doing window mouse moves, you have to be sure you are focussed on the right window component.

Link to comment
Share on other sites

I can only say that this macro should work. It is ME that have the problem, since the macro to close the AD window, also starts when I minimize or close the main application window with the title: "G-Lock SpamCombat [uNREGISTERED VERSION]"

 

In the ME log I can see that it is my "SpamComb_close" macro who runs

 

17-10-04 18:43:59 Macro "SpamComb_close" Started

17-10-04 18:43:59 Macro "SpamComb_close" Completed

 

According to the code below, ME should only type ALT C, when a window containing exactly "G-Lock SpamCombat" is on top (=visible). But in addition to that ME also restores the main window window, when I try to close this.

 

Keystroke Speed: 30 Milliseconds

Variable Set String %T1% from Window Title

If Variable %T1% = "G-Lock SpamCombat"

Delay 1 Seconds

Text Type: <ALT>c

End If

 

As I see there is simply and unfortunately no excuses for ME to do it right, it must be a bug.

By the way I encountered another odd behaviour with ME for some time ago.

Short explanation: I made a macro to run trough my URL shortcuts from Total Commander for verifying existence, but despite my macro should activate and run within IE (with a little delay offcourse), the macro was running within ME's own user interface instead.

 

regards Lars

Link to comment
Share on other sites

With the full macro running, I think this is what happens. Remember there are two windows open even though you can only see one.

 

You close the main window "g-lock spamcombat [unregistered version]".

This will start to close the program.

Window "g-lock spamcombat", the nag screen is still present behind but about to close.

ME sees window "g-lock spamcombat" and activates the macro.

The macro runs, typing Alt C.

Alt C on window "g-lock spamcombat" is what normally starts the main program in the freeware version.

The program restarts.

 

I've provided an explanation plus a working solution to start the program and kill the nag screen. That's it from me.

Link to comment
Share on other sites

Fair enough despite i'm sorry to say that it doesn't go.

The code below proves the problem. The line: "Text Box Display: Top title" displays the content of variable T1, that means title from topmost window, when the macro runs.

 

If I place the line: "Text Box Display: Top title" after the IF statement, the display box activates frequent, when I move the mouse over: "G-Lock SpamCombat [uNREGISTERED VERSION]", where this line is displayed, actually the "hidden" windows are visible parts of the main window. But because of the IF statement, the mouse move within the statement doesn't activate as expected.

Please notice that I this time used mouse move for selecting Continue instead of ALT-c.

If I try to minimize the main window: "G-Lock SpamCombat [uNREGISTERED VERSION]" the macro activates text box displays the full title. Because of the IF statement, the mouse doesn't move. Please also notice that the main window already is on top, when I minimize. That shouldn't activate the macro, but it did. Next mistake from ME is that since the IF statement prevent a mouse move because of the full title "G-Lock SpamCombat [uNREGISTERED VERSION]", the minimized window still activates, but there was no mousemove.

If I place the line: "Text Box Display: Top title" within the IF statement as below, the textbox only displays after the mouse move within the statement. So with the attempt of minimize, the is no mousemove followed by a textbox.

 

regards Lars

 

The macro code:

 

Activates from partial windows title: "G-Lock SpamCombat"

 

Keystroke Speed: 30 Milliseconds

Mouse Speed: 50 Milliseconds

Variable Set String %T1% from Window Title

If Variable %T1% = "G-Lock SpamCombat"

Delay 300 Milliseconds

Mouse Move Window 317, 279

Mouse Left Button Click

Text Box Display: Top title

End If

 

 

<SPKEY:0030><SPMSE:00050><TVAR2:01:06:><IFVAR2:1:01:1:G-Lock SpamCombat><MSD:300><MMW2:317,279><LCLK><TBOX4:F:2:000699000012000278000200:002:Top title%T1%><ENDIF>

Link to comment
Share on other sites

Here are some points to remember about Windows and Macro Express when creating macros:

  1. A window that is invisible to you and I may be visible to an application. There are very few instances in Macro Express where a window is not visible.
  2. An invisible window can be on top and/or have focus the same as a visible window.
  3. A window can be on top without having focus and vice versa.
  4. The command If Window On Top actually tests for the window having focus, and if it does not, it will return false whether it is on top or not. In other words, you can think of it as the If Window Has Focus command.
  5. A window that is minimized can still have focus, it depends on the state of the window that is next in the stack.
  6. Depending on how an application was written, the If Window On Top command works only on the top-level (parent) window and not on windows within windows.

Link to comment
Share on other sites

Hi Floyd

 

Basicly adding an "If Window On Top" test doesn't change anything in my macro.

 

As I wrote, just if I minimize/ close or move my mouse over the main application window with the title: "G-Lock SpamCombat [uNREGISTERED VERSION]", the test variable T1 is set to exactly that value, so the test in the IF statement below returns "false" and no of the arguments in the IF statement is processed (no "Mouse Move Window")

 

But still, if I minimize or close that main window as described above, that window pops up again. Very weird

 

You or other could eventually try, just download:

G-Lock SpamCombat Version: 2.30 (445) at:

http://www.glocksoft.com/sc/

 

By the way, a very nice spamfilter :-)

 

regards Lars

 

 

-------

Keystroke Speed: 30 Milliseconds

Mouse Speed: 50 Milliseconds

Variable Set String %T1% from Window Title

If Variable %T1% = "G-Lock SpamCombat"

AND

If Window Title "G-Lock SpamCombat" is on top

Delay 300 Milliseconds

Mouse Move Window 317, 279

Mouse Left Button Click

End If

Text Box Display: Top title

 

<SPKEY:0030><SPMSE:00050><TVAR2:01:06:><IFVAR2:1:01:1:G-Lock SpamCombat><AND><IFOTH:03:1:G-Lock SpamCombat><MSD:300><MMW2:317,279><LCLK><ENDIF><TBOX4:F:2:000699000012000278000200:002:Top title%T1%>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...