[vwnc] DLLCC and GetMessage

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[vwnc] DLLCC and GetMessage

Karel Beyr
Hi list,
I'm new to DLLCC as well as to using Winapi. I'm experimenting with
sending and receiving Windows messages between applications.

So far, I have been successfull in using SendMessage to a specific
window or as a broadcast (tried to send message to non-VW application
which received it successfully). However I am unable to receive that
message in my VW image. I do receive some other messages, though...

I am suspecting Smalltalk VM to receive the messages and never
forwarding them (or whatever the mechanism is).

Does anyone have any experience with this stuff?

Thanks in advance for any hints.

Karel

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] DLLCC and GetMessage

skrish
Did you have a tracer to ensure that the other application is indeed sending it as expected.
If its TCP-IP then you should be able to use tcp_trace
-Skrish

On Thu, Jul 23, 2009 at 2:13 PM, Karel Beyr <[hidden email]> wrote:
Hi list,
I'm new to DLLCC as well as to using Winapi. I'm experimenting with
sending and receiving Windows messages between applications.

So far, I have been successfull in using SendMessage to a specific
window or as a broadcast (tried to send message to non-VW application
which received it successfully). However I am unable to receive that
message in my VW image. I do receive some other messages, though...

I am suspecting Smalltalk VM to receive the messages and never
forwarding them (or whatever the mechanism is).

Does anyone have any experience with this stuff?

Thanks in advance for any hints.

Karel

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

[vwnc] DLLCC and GetMessage

Karel Beyr
Hi
I was sending messages between two Smalltalk images.. When I sent a
broadcast message, all non-Smalltalk applications received it, but the
other Smalltalk image did not.
This was true as well for message that had its receiver's HWND filled in
- when I filled non-Smalltalk application's hwnd, it was received, when
I filled in other Smalltalk's image hwnd, it was not received.

I am not using TCP-IP, I'm using winapi messaging system. (
http://msdn.microsoft.com/en-us/library/ms632590%28VS.85%29.aspx ).

Thanks
Karel

Sudhakar Krishnamachari wrote:

> Did you have a tracer to ensure that the other application is indeed
> sending it as expected.
> If its TCP-IP then you should be able to use tcp_trace
> -Skrish
>
> On Thu, Jul 23, 2009 at 2:13 PM, Karel Beyr <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Hi list,
>     I'm new to DLLCC as well as to using Winapi. I'm experimenting with
>     sending and receiving Windows messages between applications.
>
>     So far, I have been successfull in using SendMessage to a specific
>     window or as a broadcast (tried to send message to non-VW application
>     which received it successfully). However I am unable to receive that
>     message in my VW image. I do receive some other messages, though...
>
>     I am suspecting Smalltalk VM to receive the messages and never
>     forwarding them (or whatever the mechanism is).
>
>     Does anyone have any experience with this stuff?
>
>     Thanks in advance for any hints.
>
>     Karel
>
>     _______________________________________________
>     vwnc mailing list
>     [hidden email] <mailto:[hidden email]>
>     http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
>
>

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] DLLCC and GetMessage

Clemens Hoffmann
In reply to this post by Karel Beyr
Hello Karel,

receiving user defined Windows messages is a bit tricky. Normally you
implement them
in the message queue of your Application. In VW this is a bit different.
The VM maintains
the Windows message queue and delegate the messages to the appropriate
controller.

And now it get's ugly: There is no configurable hook for unknown Windows
events. You
have to override the method ApplicationWindow >> unknownEvent:. You may
load the
parcel Windows Goodies for examples. The method unknownEvent: is
overridden to add
drag and drop and shutdown  functionality. Look also for the method
MyFileBrowser >> windowEvent:from: and MyFileBrowser >> handleDropEvent:
as example
where to implement the functionality.

Hope this helps

    Clemens

> Hi list,
> I'm new to DLLCC as well as to using Winapi. I'm experimenting with
> sending and receiving Windows messages between applications.
>
> So far, I have been successfull in using SendMessage to a specific
> window or as a broadcast (tried to send message to non-VW application
> which received it successfully). However I am unable to receive that
> message in my VW image. I do receive some other messages, though...
>
> I am suspecting Smalltalk VM to receive the messages and never
> forwarding them (or whatever the mechanism is).
>
> Does anyone have any experience with this stuff?
>
> Thanks in advance for any hints.
>
> Karel
>
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
>
>
>  


--
Clemens Hoffmann
Senior Consultant

Email: [hidden email]
Tel:   +49 231 975 99 31
Fax:   +49 231 975 99 20

Georg Heeg eK Dortmund
Handelsregister: Amtsgericht Dortmund  A 12812

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] DLLCC and GetMessage

Karel Beyr
Hi
You are right.
Thank you very much!
Karel

Clemens Hoffmann wrote:

> Hello Karel,
>
> receiving user defined Windows messages is a bit tricky. Normally you
> implement them
> in the message queue of your Application. In VW this is a bit
> different. The VM maintains
> the Windows message queue and delegate the messages to the appropriate
> controller.
>
> And now it get's ugly: There is no configurable hook for unknown
> Windows events. You
> have to override the method ApplicationWindow >> unknownEvent:. You
> may load the
> parcel Windows Goodies for examples. The method unknownEvent: is
> overridden to add
> drag and drop and shutdown  functionality. Look also for the method
> MyFileBrowser >> windowEvent:from: and MyFileBrowser >>
> handleDropEvent: as example
> where to implement the functionality.
>
> Hope this helps
>
>    Clemens
>
>> Hi list,
>> I'm new to DLLCC as well as to using Winapi. I'm experimenting with
>> sending and receiving Windows messages between applications.
>>
>> So far, I have been successfull in using SendMessage to a specific
>> window or as a broadcast (tried to send message to non-VW application
>> which received it successfully). However I am unable to receive that
>> message in my VW image. I do receive some other messages, though...
>>
>> I am suspecting Smalltalk VM to receive the messages and never
>> forwarding them (or whatever the mechanism is).
>>
>> Does anyone have any experience with this stuff?
>>
>> Thanks in advance for any hints.
>>
>> Karel
>>
>> _______________________________________________
>> vwnc mailing list
>> [hidden email]
>> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
>>
>>
>>  

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] DLLCC and GetMessage

Claus Kick
In reply to this post by Clemens Hoffmann
Clemens Hoffmann schrieb:

> Hello Karel,
>
> receiving user defined Windows messages is a bit tricky. Normally you
> implement them
> in the message queue of your Application. In VW this is a bit different.
> The VM maintains
> the Windows message queue and delegate the messages to the appropriate
> controller.
>
> And now it get's ugly: There is no configurable hook for unknown Windows
> events. You have to override the method ApplicationWindow >> unknownEvent:. You may
> load the
> parcel Windows Goodies for examples. The method unknownEvent: is
> overridden to add
> drag and drop and shutdown  functionality.

Couldnt that be rewritten in the way that the VM simply catches all
windows messages, forwards them to a general controller which delegates
(or not), depending on some dictionary (key: wm_message, value->
method_symbol)?

That way, you just have to adjust a dictionary, you could even strip it
if you do not want to "receive" certain messages.

The way it is handled now strikes me as rather ... inflexible.



_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc