Lisp HUG Maillist Archive

win32 DDE/Double click

I am trying to get my windows app (exe) open its .foo files from
explorer.  I used the example provided, and set up a DDE server.  This
works fine if the program is running -- it gets the filename.  If it
is not running, the shell falls back to running "myexe.exe %1" which
also runs OK.  But in the second case I get the "Cannot find the file
"filename.foo" (or one of its components)..."  dialog along with the
working program with the proper file in it.

A search at MSDN didn't tell me when exactly this message pops up, but
It told me enough for me to assume that the initial DDE connect fails,
the shell runs the program, the second DDE connect also fails
triggering the message.  I start the DDE server from an
(excute-with-context ...) form within the context of  main capi interface 
as early in the code as possible.  

Does this sound familiar to anyone?  I'll try to isolate this some
more and maybe work around it by turning off DDE from the shell and
just running the program which then would check for a second instance
and do teh right DDE thing.  But I wanted to check first, if there was
a simple thing I was missing.  (The code is almost identical to the
example, LWpro 4.3.7).

thanks,

BM




Re: win32 DDE/Double click

This is a LispWorks problem as I ran into it recently.  Check with 
Xanalys for a private patch that will fix the problem.

As a workaround, deliver your application without a splash screen.

   - Gary Palter
     Principal Software Engineer
     Clozure Associates
________________________________________________________________________

At 12:02 AM +0200 11/5/04, Bulent Murtezaoglu wrote:
>I am trying to get my windows app (exe) open its .foo files from
>explorer.  I used the example provided, and set up a DDE server.  This
>works fine if the program is running -- it gets the filename.  If it
>is not running, the shell falls back to running "myexe.exe %1" which
>also runs OK.  But in the second case I get the "Cannot find the file
>"filename.foo" (or one of its components)..."  dialog along with the
>working program with the proper file in it.
>
>A search at MSDN didn't tell me when exactly this message pops up, but
>It told me enough for me to assume that the initial DDE connect fails,
>the shell runs the program, the second DDE connect also fails
>triggering the message.  I start the DDE server from an
>(excute-with-context ...) form within the context of  main capi interface
>as early in the code as possible. 
>
>Does this sound familiar to anyone?  I'll try to isolate this some
>more and maybe work around it by turning off DDE from the shell and
>just running the program which then would check for a second instance
>and do teh right DDE thing.  But I wanted to check first, if there was
>a simple thing I was missing.  (The code is almost identical to the
>example, LWpro 4.3.7).
>
>thanks,
>
>BM


Updated at: 2020-12-10 08:54 UTC