1. DDE by Matthew

I can't seem to get the demo to work.

I run the server, then run the client, but nothing ever happens when I try
connecting. Any hints?

Thanks!
ck

new topic     » topic index » view message » categorize

2. Re: DDE by Matthew

The way to use it is to first hit the connect button (once they're both
running).  Then type something into the edit box, and hit the send button.
I think that the way the demo's are written, you need to open the client
first.

I think the problem is how the app's register themselves.  If you change the
string the client uses from "EuDDE" to something else, it won't matter in
which order you run the client and the server.  Also, don't take too much
from the fact that they're called client and server.  The whole DDE
terminology is a little different from typical client/server stuff, and my
little demo is pretty crude.

Pretty much everything I know about DDE is in the code (I learned as I typed
:).  One thing that should probably be done, is to free the data handles
after they've been sent.  You can use the DdeFreeDataHandle C function,
where the parameter is the data handle.  I didn't wrap that one.

Most of all, I'd recommend looking up DDEML (DDE Manipulation Language --
the API to DDE provided by windows) in either the Win32 Help file or MSDN if
you want to do anything tricky with the code.

I haven't tried it, but it shouldn't be too difficult to send arbitrary
sequences (using DDE or sockets or whatever) using the same algorithms that
Rob used in EDS for encoding sequences/integers/atoms.

If you've looked at my code, you'll notice in the callback that I have to
cut off the data received.  For some reason, it always gets 28 bytes,
regardless of the size specified, so I just made the string sent
0-terminated.

I'd be interested in hearing what people are using this for, if for no other
reason than it would make it easier to wrap everything in an intelligent
way.

Matt Lewis

> -----Original Message-----
> From: Ck Lester

> I can't seem to get the demo to work.
>
> I run the server, then run the client, but nothing ever
> happens when I try
> connecting. Any hints?

new topic     » goto parent     » topic index » view message » categorize

3. Re: DDE by Matthew

On 10 Jan 2001, at 13:43, Ck Lester wrote:

> I can't seem to get the demo to work.
>
> I run the server, then run the client, but nothing ever happens when I try
> connecting. Any hints?

I get "registerw32Function not declared" ?

Kat,
busier than normal.

new topic     » goto parent     » topic index » view message » categorize

4. Re: DDE by Matthew

On 10 Jan 2001, at 11:30, Matthew Lewis wrote:


> I'd be interested in hearing what people are using this for, if for no other
> reason than it would make it easier to wrap everything in an intelligent way.

My first use for it is an interface for mirc, as a database server, and to have
Eu do more than mirc can do, faster. I am ok using socks, which i almost
prefer because of fewer limitations. However, using socks on a puter
connected to the internet, without a firewall, opens the applications to
possible connection from/to the internet, and this is Not A Good Thing. I
run a firewall, but most people don't. So i figure for an application i want to
hand out to windoze users, DDE is safer, and mirc handles it nicely.

Kat

new topic     » goto parent     » topic index » view message » categorize

5. Re: DDE by Matthew

.. must have the latest version of win32lib, [ 0.55.1 ] ,
which uses a whole bunch of new functions.
..here's a mirror, thanks to Brian.
http://www.cnw.com/~bkb/Win32Lib/

new topic     » goto parent     » topic index » view message » categorize

6. Re: DDE by Matthew

> -----Original Message-----
> From: Ck Lester

> I started the client first, then connected (there's no
> confirmation that
> connection was made!), then sent some text and it worked!

Yeah, I didn't put a whole lot into the demo.  It was more a proof of
concept than anything.  To confirm the connection, you can trap the
XTYP_CONNECT message on the 'server' end (it already does that to tell DDEML
to accept the connection) in the callback, and look for XTYP_CONFIRM_CONNECT
on the 'client' callback (I think that's the correct message).

> I'm going to consider moving our forms to a EUPHORIA program
> and using MS
> Word as a print engine... I've been able to run Word from
> Filemaker using
> DDE commands, so I figure I can the same with this.

You should be able to.  You'll probably have to use XTYP_EXECUTE
transactions.  All the constants you'll need should be in there.  I think I
got them all from the ddeml.h header file, although there are a lot of other
functions that I didn't include.

> Just out of curiosity, is there a different route to using
> Word as a print
> engine other than DDE (for instance, OLE)...?

OLE is probably the preferred method (that's what the other Office app's use
to talk to each other--OLE Automation).  I've looked into wrapping OLE stuff
before (mainly for drag and drop), but everything I was able to find seems
to be C++ based (which makes sense: *Object* Linking and Embedding), which
would indicate the need for an intermediary DLL to wrap the OOP stuff.  I
wasn't really able to make heads or tails of the VC++ docs regarding OLE.

Matt Lewis

new topic     » goto parent     » topic index » view message » categorize

7. Re: DDE by Matthew

>OLE is probably the preferred method (that's what the other Office app's
use
>to talk to each other--OLE Automation).  I've looked into wrapping OLE
stuff
>before (mainly for drag and drop), but everything I was able to find seems
>to be C++ based (which makes sense: *Object* Linking and Embedding), which
>would indicate the need for an intermediary DLL to wrap the OOP stuff.  I
>wasn't really able to make heads or tails of the VC++ docs regarding OLE.

I think even OLE has been superseded by COM (Component Object Model).

And COM is being superseded by ".NET"????

Well actually I think (from a bad memory!) OLE is a subset of COM
(but don't quote me on that one).

ActiveX is also a subset of COM.  So if you can get COM to work you
open the Euphoria world to thousands of prebuilt libraries able
to do almost any task possible!!
It would be difficult to do, and maybe near impossible with the lack
of OOP features in Euphoria.
It would be possible to wrap specific ActiveX controls by creating
DLL interfaces with C or Delphi for instance which expose methods
and data that Euphoria can understand ... but I'm babbling on.

Ray Smith

new topic     » goto parent     » topic index » view message » categorize

8. Re: DDE by Matthew

> -----Original Message-----
> From: Kat

>
> I get "registerw32Function not declared" ?

You can change all instances of registerw32Function to
declare_c_func()/linkFunc() and w32Func() to c_func(), and it should work
without win32lib v0.55.1 (if you use the native Eu delare_c_func/proc and
c_func/proc, it should work without win32lib altogether).

new topic     » goto parent     » topic index » view message » categorize

9. Re: DDE by Matthew

I started the client first, then connected (there's no confirmation that
connection was made!), then sent some text and it worked!

I'm going to consider moving our forms to a EUPHORIA program and using MS
Word as a print engine... I've been able to run Word from Filemaker using
DDE commands, so I figure I can the same with this.

Just out of curiosity, is there a different route to using Word as a print
engine other than DDE (for instance, OLE)...?

-ck

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu