Hey rick,

why not create an empty message and just post your code to the list?  might
be of more help than just discussing it, as I too have become lost.

thanks.

Chip
 

-----Original Message-----
From: RicksPlace [mailto:ofbgm...@mi.rr.com] 
Sent: Saturday, April 02, 2011 3:06 PM
To: gw-scripting@gwmicro.com
Subject: Re: External Script, ProcessID and Third Test Output Results

Hi Doug: Nope... I put the requsit globals in the root module and all the
subroutines executed related to them in the root module as well. That is one
of the final things I tried because, as you noted, each sub must relate to a
process and to a global within the current container when it comes to com
stuff and callbacks.
So, your concept seems to match what I have found as well when it comes to
that.
I am wondering if anyone, anyplace in this wide world has gotten an external
script to work which uses MSAA event processing. I haven't seen one yet but
am listening for something, anything, that might indicate that this can
actually be done in a real-world example of an associated external script.
The GW sample avoids any complications like using MSAA Event processing and
even the most fundemental process of using an associated application. But, I
digress and that is off point.
Later.Rick USA
----- Original Message -----
From: "Doug Lee" <doug....@ssbbartgroup.com>
To: <gw-scripting@gwmicro.com>
Sent: Saturday, April 02, 2011 2:51 PM
Subject: Re: External Script, ProcessID and Third Test Output Results


>I haven't followed this thread carefully, but are you trying to use a  
>class method for an event function?  As far as I know, you can't do  
>that in VBScript or Javascript because you can't make anything but a  
>top-level function into an event watcher.  I assume this problem also  
>manifests in other languages as a requirement that any event appear in  
>the top-level namespace, but I haven't proven this.
>
> On Sat, Apr 02, 2011 at 02:01:03PM -0400, RicksPlace wrote:
>   Hi Again from the External Front:
>   To better match the GW sample I moved all logic into the Root Module to
>   avoid any possible conflict of process implementation due to putting
>   the logic into the Class that defines the Message Pump context.
>   Now the Run command executes an empty class with only a New Constructor
>   sub that does nothing but create a dummy message pump.
>   All logic and variables are defined in the Root Module and globals are
>   defined at the Module level as they were in the GW Example of a VB.net
>   script.
>   Again, the BlockEvent and the OnShutdown events work perfectly but the
>   WatchEvent is still not working even though it seems to be using the
>   correct process as described below.
>   This is leading me to think that there might be a problem with the
>   Windoweyes implementation of the WatchEvent itself but I'm not a COM
>   Guru so am not 100 percent sure.
>   The Process held in the ClientInformation object appears to be correct
>   which is the process of the Overlap Window which should, and is, the
>   CSharp Application Window.
>   Therefore, when I filter the MSAAEventSource used with the WatchEvent
>   the process should be correct and thus the WatchEvent should be firing
>   unless I am missing something.
>   Again, it works as expected with the BlockEvent indicating something
>   might be wrong with the WatchEvent itself or my implementation of it.
>   At this point I think I need Aaron or someone from GW, or an
>   experienced Windoweyes External scriptor, to take a look at things to
>   determine if there is a problem with the Windoweyes implementation of
>   this feature or if I am still doing something wrong.
>
>
>
>   Below are some lists of objects and properties indicating that the
>   process I use is correct which means that everything should be working
>   if I have not made some subtle, or stupid,  mistake I can't find.
>
>
>
>   BeginCopiedOutput:
>   Enter Main Sub
>   ClientInformation Initialized OK
>   MyMSAAEventSource Initialized and Filtered OK
>   BlockFocusEvent Initialized OK.
>   MyMSAAEventSource.WatchEvent sub executed with no errors.
>
>
>
>   BeginList: Overlap Object to Main Module
>   ClassName: wndclass_desked_gsk
>   Handle: 853216
>   ModuleName: MSENV
>   Name: Microsoft Visual C# 2008 Expres
>   OriginalClassName: wndclass_desked_gsk
>   OriginalType: 7
>   Process.ProcessID: 680
>   Style: System.__ComObject
>   Title: Start Page - Microsoft Visual C# 2008 Express Edition
>   Type: 7
>   EndList: Overlap Object to Main Module
>   Note: The above is the CSharp overlap information.
>   Notice that the process id is 680.
>
>
>
>   BeginList: ClientInformation.ApplicationProcess
>   ProcessID: 680
>   ModuleName: vcsexpress
>   ExecutablePath: C:\Program Files\Microsoft Visual Studio
>   9.0\Common7\IDE\vcsexpress.exe
>   InternalName: VCSExpress.exe
>   OriginalFilename: VCSExpress.exe
>   ProductName: MicrosoftR Visual StudioR 2008
>   ProductVersion: 9.0.30729.1
>   EndList: ClientInformation.ApplicationProcess
>   Notice that the process id matches the overlap process id of 680.
>   That means that when I assign the Process id of 680 to the BlockEvent
>   via the MyClientInformation Process and,
>   the WatchEvent via the MyMSAAEventSource using the MyClientInformation
>   process,
>   that they both should be applied to watch the same process ie... the
>   CSharp Application process.
>   The BlockEvent works as expected but the WatchEvent is not working.
>
>
>
>   RunPump  Statement is next
>   The New Context Pump is initialized.
>   Shutting Down Now
>   Notice that the words "Shutting Down Now" are in the OnShutdown sub
>   fired when that event occurs as triggered in the MyClientInformation
>   process further indicating something is diferent with the WatchEvent
>   method.
>   EndCopiedOutput:
>   Thanks for all your help.
>   This puppy just doesn't seem to hunt and I can't figure out why.
>   Rick USA
>
> --
> Doug Lee, Senior Accessibility Programmer SSB BART Group - 
> Accessibility-on-Demand mailto:doug....@ssbbartgroup.com  
> http://www.ssbbartgroup.com "While they were saying among themselves 
> it cannot be done, it was done." --Helen Keller
> 

Reply via email to