Hello,
I tried running the point of sale apps this morning that communicate with DDE.
Both of them (DISP.EXE and PDV.EXE) are 16bit apps. There is also a 32bit DISP but I am using the 16bit version. I have access to the source of these programs.
The program init sequence is PDV.EXE calls DISP.EXE with a shell comand and then sets up DDE. PDV does all the processing, talks to external hardwares and then sends output for DISP to display.
I am using the conf file that came with wine-20020122 so USER, USER32 and DDEML are the builtin libraries.
After running bash> wine /c/Regis/PDV I get the following error:
err:ddeml:DdeConnect Done with INITIATE, but no Server window available fixme:ddeml:DdeGetLastError (2): error reporting is weakly implemented
I tracked down the message to wine-20020122/dlls/user/dde/client.c . I am going to debug client.c and server.c to see if I can understand what the code is doing and where things are not working.
I have added below the output of a) wine --debugmsg +ddeml /c/Regis/PDV b) wine --debugmsg +relay /c/Regis/PDV 2>&1 | grep DDE c) wine --debugmsg +ddeml,+msg /c/Regis/PDV
Thanks for your help.
Miguel
OUTPUT messages:
a)
trace:ddeml:WDML_Initialize (0x40f94a12,0x88700ba,0x0,0) trace:ddeml:WDML_Initialize instance created - checking validity trace:ddeml:WDML_Initialize new instance, callback 0x88700ba flags 0 trace:ddeml:WDML_Initialize First application instance detected OK trace:ddeml:WDML_IncrementInstanceId New instance id 1 allocated trace:ddeml:WDML_Initialize New application instance processing finished OK trace:ddeml:DdeCreateStringHandleA (1,0x40f94f01,1004) trace:ddeml:WDML_CreateString added atom "DISP" with HSZ 0xc000, trace:ddeml:DdeCreateStringHandleA (1,0x40f94f06,1004) trace:ddeml:WDML_CreateString added atom "Form1" with HSZ 0xc001, trace:ddeml:DdeCreateStringHandleA (1,0x40f94f0c,1004) trace:ddeml:WDML_CreateString added atom "label1" with HSZ 0xc002, trace:ddeml:DdeNameService (1,0xc000,0x0,1) trace:ddeml:WDML_FindServer Service name missing trace:ddeml:DdeNameService Adding service name trace:ddeml:DdeQueryStringA (1, 0xc000, 0x411a62c4, 256, 1004) trace:ddeml:DdeQueryStringA returning "DISP" trace:ddeml:DdeCreateStringHandleA (1,0x411a61c4,1004) trace:ddeml:WDML_CreateString added atom "DISP(0x0806b3c8)" with HSZ 0xc003, trace:ddeml:DdeNameService Created nameServer=10025 for instance=00000001 trace:ddeml:WDML_Initialize (0x403d3488,0x33f015d,0x10,0) trace:ddeml:WDML_Initialize instance created - checking validity trace:ddeml:WDML_Initialize new instance, callback 0x33f015d flags 10 trace:ddeml:WDML_Initialize Subsequent application instance - starting checks trace:ddeml:WDML_Initialize Application Instance checks finished trace:ddeml:WDML_IncrementInstanceId New instance id 2 allocated trace:ddeml:WDML_Initialize New application instance processing finished OK trace:ddeml:DdeCreateStringHandleA (2,0x403c5580,1004) trace:ddeml:WDML_CreateString added atom "DISP" with HSZ 0xc000, trace:ddeml:DdeCreateStringHandleA (2,0x403c5585,1004) trace:ddeml:WDML_CreateString added atom "Form1" with HSZ 0xc001, trace:ddeml:DdeCreateStringHandleA (2,0x403c558b,1004) trace:ddeml:WDML_CreateString added atom "label1" with HSZ 0xc002, trace:ddeml:DdeConnect (0x2,0xc000,0xc001,(nil)) trace:ddeml:WDML_ServerNameProc WM_DDE_INITIATE message received! trace:ddeml:WDML_ServerNameProc idInst=1, threadID=0x8073c10 trace:ddeml:WDML_MakeHszFromAtom c026 => L"DISP" trace:ddeml:DdeCreateStringHandleW (1,0x411a63e4,1200) trace:ddeml:WDML_CreateString added atom L"DISP" with HSZ 0xc000, trace:ddeml:WDML_MakeHszFromAtom c02e => L"Form1" trace:ddeml:DdeCreateStringHandleW (1,0x411a63dc,1200) trace:ddeml:WDML_CreateString added atom L"Form1" with HSZ 0xc001, trace:ddeml:DdeCmpStringHandles (c000<L"DISP"> c000<L"DISP">); trace:ddeml:WDML_InvokeCallback invoking CB16[088700ba] (4194 0 00000000 0xc001 0xc000 0 1092249376 0) trace:ddeml:WDML_InvokeCallback done => 00000000 err:ddeml:DdeConnect Done with INITIATE, but no Server window available fixme:ddeml:DdeGetLastError (2): error reporting is weakly implemented trace:ddeml:WDML_Initialize (0x40f94a12,0x88700c2,0x0,0) trace:ddeml:WDML_Initialize instance created - checking validity trace:ddeml:WDML_Initialize reinitialisation of (0x40f94a12,0x88700c2,0x0,0): stub trace:ddeml:WDML_MakeHszFromAtom c026 => L"DISP" trace:ddeml:DdeCreateStringHandleW (1,0x411a68ac,1200) trace:ddeml:WDML_CreateString added atom L"DISP" with HSZ 0xc000, trace:ddeml:WDML_MakeHszFromAtom c02b => L"DISP(0x0806b3c8)" trace:ddeml:DdeCreateStringHandleW (1,0x411a68a4,1200) trace:ddeml:WDML_CreateString added atom L"DISP(0x0806b3c8)" with HSZ 0xc003, trace:ddeml:WDML_InvokeCallback invoking CB16[088700ba] (32930 0 00000000 0xc000 0xc003 0 0 0) trace:ddeml:WDML_InvokeCallback done => 00000000 fixme:dialog:MSGBOX_OnInit system modal msgbox ! Not modal yet.
b)
08073c10:Call DDEML.2: DDEINITIALIZE(08bf:00c2,088700ba,00000000,00000000) ret=08a7:103f ds=08bf 08073c10:Ret DDEML.2: DDEINITIALIZE() retval=0000 ret=08a7:103f ds=08bf 08073c10:Call DDEML.21: DDECREATESTRINGHANDLE(00000001,08bf05b1 "DISP",03ec) ret=08a7:105d ds=08bf 08073c10:Ret DDEML.21: DDECREATESTRINGHANDLE() retval=0000c000 ret=08a7:105d ds=08bf 08073c10:Call DDEML.21: DDECREATESTRINGHANDLE(00000001,08bf05b6 "Form1",03ec) ret=08a7:1075 ds=08bf 08073c10:Ret DDEML.21: DDECREATESTRINGHANDLE() retval=0000c001 ret=08a7:1075 ds=08bf 08073c10:Call DDEML.21: DDECREATESTRINGHANDLE(00000001,08bf05bc "label1",03ec) ret=08a7:108d ds=08bf 08073c10:Ret DDEML.21: DDECREATESTRINGHANDLE() retval=0000c002 ret=08a7:108d ds=08bf 08073c10:Call DDEML.27: DDENAMESERVICE(00000001,0000c000,00000000,0001) ret=08a7:10a8 ds=08bf 08073c10:Ret DDEML.27: DDENAMESERVICE() retval=00000001 ret=08a7:10a8 ds=08bf 08073060:Call DDEML.2: DDEINITIALIZE(0387:0088,033f015d,00000010,00000000) ret=033f:06f2 ds=0387 08073060:Ret DDEML.2: DDEINITIALIZE() retval=0000 ret=033f:06f2 ds=0387 08073060:Call DDEML.21: DDECREATESTRINGHANDLE(00000002,033f0668 "DISP",03ec) ret=033f:070e ds=0387 08073060:Ret DDEML.21: DDECREATESTRINGHANDLE() retval=0000c000 ret=033f:070e ds=0387 08073060:Call DDEML.21: DDECREATESTRINGHANDLE(00000002,033f066d "Form1",03ec) ret=033f:0726 ds=0387 08073060:Ret DDEML.21: DDECREATESTRINGHANDLE() retval=0000c001 ret=033f:0726 ds=0387 08073060:Call DDEML.21: DDECREATESTRINGHANDLE(00000002,033f0673 "label1",03ec) ret=033f:073e ds=0387 08073060:Ret DDEML.21: DDECREATESTRINGHANDLE() retval=0000c002 ret=033f:073e ds=0387 08073060:Call DDEML.7: DDECONNECT(00000002,0000c000,0000c001,0000:0000) ret=033f:075c ds=0387 08073060:Call window proc 0x40625b84 (hwnd=00010027,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) 08073060:Ret window proc 0x40625b84 (hwnd=00010027,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) retval=00000000 08073060:Call window proc 0x40626930 (hwnd=00010026,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) 08073060:Ret window proc 0x40626930 (hwnd=00010026,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) retval=00000000 08073c10:Call window proc 0x40629924 (hwnd=00010025,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) 08073c10:Ret window proc 0x40629924 (hwnd=00010025,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) retval=00000000 08073c10:Call window proc 0x40626930 (hwnd=00010024,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) 08073c10:Ret window proc 0x40626930 (hwnd=00010024,msg=WM_DDE_INITIATE,wp=00010027,lp=c02ec026) retval=00000000 08073060:Ret DDEML.7: DDECONNECT() retval=00000000 ret=033f:075c ds=0387 08073060:Call DDEML.20: DDEGETLASTERROR(00000002) ret=033f:0775 ds=0387 08073060:Ret DDEML.20: DDEGETLASTERROR() retval=0001 ret=033f:0775 ds=0387 08073c10:Call DDEML.2: DDEINITIALIZE(08bf:00c2,088700c2,00000000,00000000) ret=08a7:103f ds=08bf 08073c10:Ret DDEML.2: DDEINITIALIZE() retval=4006 ret=08a7:103f ds=08bf
c)
trace:msg:QUEUE_CreateMsgQueue (): Creating message queue... trace:msg:PERQDATA_CreateInstance () fixme:keyboard:X11DRV_KEYBOARD_DetectLayout Your keyboard layout was not found! Using closest match instead (Brazilian ABNT-2 keyboard layout) for scancode mapping. Please define your layout in windows/x11drv/keyboard.c and submit them to us for inclusion into future Wine releases. See the Wine User Guide, chapter "Keyboard" for more information. trace:msg:RegisterWindowMessageA Rws_Help trace:msg:RegisterWindowMessageA BWCC_CtlColor_Shade trace:msg:QUEUE_CreateMsgQueue (): Creating message queue... trace:msg:PERQDATA_CreateInstance () trace:msg:PERQDATA_Addref (): current refcount 1 ... trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:QUEUE_CreateMsgQueue (): Creating message queue... trace:msg:PERQDATA_CreateInstance () trace:msg:PERQDATA_Addref (): current refcount 2 ... trace:msg:RegisterWindowMessageA BWCC_CtlColor_Shade trace:ddeml:WDML_Initialize (0x40f94a12,0x88700ba,0x0,0) trace:ddeml:WDML_Initialize instance created - checking validity trace:ddeml:WDML_Initialize new instance, callback 0x88700ba flags 0 trace:ddeml:WDML_Initialize First application instance detected OK trace:ddeml:WDML_IncrementInstanceId New instance id 1 allocated trace:ddeml:WDML_Initialize New application instance processing finished OK trace:ddeml:DdeCreateStringHandleA (1,0x40f94f01,1004) trace:ddeml:WDML_CreateString added atom "DISP" with HSZ 0xc000, trace:ddeml:DdeCreateStringHandleA (1,0x40f94f06,1004) trace:ddeml:WDML_CreateString added atom "Form1" with HSZ 0xc001, trace:ddeml:DdeCreateStringHandleA (1,0x40f94f0c,1004) trace:ddeml:WDML_CreateString added atom "label1" with HSZ 0xc002, trace:ddeml:DdeNameService (1,0xc000,0x0,1) trace:ddeml:WDML_FindServer Service name missing trace:ddeml:DdeNameService Adding service name trace:ddeml:DdeQueryStringA (1, 0xc000, 0x411a62c4, 256, 1004) trace:ddeml:DdeQueryStringA returning "DISP" trace:ddeml:DdeCreateStringHandleA (1,0x411a61c4,1004) trace:ddeml:WDML_CreateString added atom "DISP(0x0806b3c8)" with HSZ 0xc003, trace:ddeml:DdeNameService Created nameServer=10025 for instance=00000001 trace:msg:send_inter_thread_message hwnd 10022 msg 86 (WM_NCACTIVATE) wp 0 lp 0 trace:msg:GetMessageW (021f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:send_inter_thread_message hwnd 10023 msg d (WM_GETTEXT) wp 5 lp 40fa0394 trace:msg:MSG_peek_message got type 0 msg 86 hwnd 10022 wp 0 lp 0 trace:msg:retrieve_reply hwnd 10022 msg 86 (WM_NCACTIVATE) wp 0 lp 0 got reply 1 (err=0) trace:msg:send_inter_thread_message hwnd 10022 msg 6 (WM_ACTIVATE) wp 0 lp 10023 trace:msg:MSG_peek_message got type 1 msg d hwnd 10023 wp 5 lp 40fa0394 trace:msg:retrieve_reply hwnd 10023 msg d (WM_GETTEXT) wp 5 lp 40fa0394 got reply 4 (err=0) trace:ddeml:WDML_Initialize (0x403d348c,0x33f015d,0x10,0) trace:ddeml:WDML_Initialize instance created - checking validity trace:ddeml:WDML_Initialize new instance, callback 0x33f015d flags 10 trace:ddeml:WDML_Initialize Subsequent application instance - starting checks trace:ddeml:WDML_Initialize Application Instance checks finished trace:ddeml:WDML_IncrementInstanceId New instance id 2 allocated trace:ddeml:WDML_Initialize New application instance processing finished OK trace:ddeml:DdeCreateStringHandleA (2,0x403c5584,1004) trace:ddeml:WDML_CreateString added atom "DISP" with HSZ 0xc000, trace:ddeml:DdeCreateStringHandleA (2,0x403c5589,1004) trace:ddeml:WDML_CreateString added atom "Form1" with HSZ 0xc001, trace:ddeml:DdeCreateStringHandleA (2,0x403c558f,1004) trace:ddeml:WDML_CreateString added atom "label1" with HSZ 0xc002, trace:ddeml:DdeConnect (0x2,0xc000,0xc001,(nil)) trace:msg:send_inter_thread_message hwnd 10023 msg 3e0 (WM_DDE_INITIATE) wp 10027 lp c02ec026 trace:msg:MSG_peek_message got type 0 msg 6 hwnd 10022 wp 0 lp 10023 trace:msg:retrieve_reply hwnd 10022 msg 6 (WM_ACTIVATE) wp 0 lp 10023 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10027 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 trace:msg:MSG_peek_message got type 0 msg 3e0 hwnd 10023 wp 10027 lp c02ec026 trace:msg:retrieve_reply hwnd 10023 msg 3e0 (WM_DDE_INITIATE) wp 10027 lp c02ec026 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10025 msg 3e0 (WM_DDE_INITIATE) wp 10027 lp c02ec026 trace:msg:MSG_peek_message got type 1 msg 1c hwnd 10027 wp 0 lp 8073c10 trace:msg:retrieve_reply hwnd 10027 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10026 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 trace:msg:MSG_peek_message got type 0 msg 3e0 hwnd 10025 wp 10027 lp c02ec026 trace:ddeml:WDML_ServerNameProc WM_DDE_INITIATE message received! trace:ddeml:WDML_ServerNameProc idInst=1, threadID=0x8073c10 trace:ddeml:WDML_MakeHszFromAtom c026 => L"DISP" trace:ddeml:DdeCreateStringHandleW (1,0x411a63e4,1200) trace:ddeml:WDML_CreateString added atom L"DISP" with HSZ 0xc000, trace:ddeml:WDML_MakeHszFromAtom c02e => L"Form1" trace:ddeml:DdeCreateStringHandleW (1,0x411a63dc,1200) trace:ddeml:WDML_CreateString added atom L"Form1" with HSZ 0xc001, trace:ddeml:DdeCmpStringHandles (c000<L"DISP"> c000<L"DISP">); trace:ddeml:WDML_InvokeCallback invoking CB16[088700ba] (4194 0 00000000 0xc001 0xc000 0 1092249376 0) trace:ddeml:WDML_InvokeCallback done => 00000000 trace:msg:retrieve_reply hwnd 10025 msg 3e0 (WM_DDE_INITIATE) wp 10027 lp c02ec026 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10024 msg 3e0 (WM_DDE_INITIATE) wp 10027 lp c02ec026 trace:msg:MSG_peek_message got type 1 msg 1c hwnd 10026 wp 0 lp 8073c10 trace:msg:retrieve_reply hwnd 10026 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10022 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 trace:msg:MSG_peek_message got type 0 msg 3e0 hwnd 10024 wp 10027 lp c02ec026 trace:msg:retrieve_reply hwnd 10024 msg 3e0 (WM_DDE_INITIATE) wp 10027 lp c02ec026 got reply 0 (err=0) err:ddeml:DdeConnect Done with INITIATE, but no Server window available fixme:ddeml:DdeGetLastError (2): error reporting is weakly implemented trace:msg:send_inter_thread_message hwnd 10023 msg 86 (WM_NCACTIVATE) wp 0 lp 0 trace:msg:MSG_peek_message got type 1 msg 1c hwnd 10022 wp 0 lp 8073c10 trace:msg:retrieve_reply hwnd 10022 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10021 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 trace:msg:MSG_peek_message got type 0 msg 86 hwnd 10023 wp 0 lp 0 trace:msg:retrieve_reply hwnd 10023 msg 86 (WM_NCACTIVATE) wp 0 lp 0 got reply 1 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 6 (WM_ACTIVATE) wp 0 lp 10028 trace:msg:MSG_peek_message got type 1 msg 1c hwnd 10021 wp 0 lp 8073c10 trace:msg:retrieve_reply hwnd 10021 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073c10 got reply 0 (err=0) trace:ddeml:WDML_Initialize (0x40f94a12,0x88700c2,0x0,0) trace:ddeml:WDML_Initialize instance created - checking validity trace:ddeml:WDML_Initialize reinitialisation of (0x40f94a12,0x88700c2,0x0,0): stub trace:msg:MSG_peek_message got type 0 msg 6 hwnd 10023 wp 0 lp 10028 trace:msg:MSG_peek_message got type 5 msg 600 hwnd 10024 wp c026 lp c02b trace:ddeml:WDML_MakeHszFromAtom c026 => L"DISP" trace:ddeml:DdeCreateStringHandleW (1,0x411a68ac,1200) trace:ddeml:WDML_CreateString added atom L"DISP" with HSZ 0xc000, trace:ddeml:WDML_MakeHszFromAtom c02b => L"DISP(0x0806b3c8)" trace:ddeml:DdeCreateStringHandleW (1,0x411a68a4,1200) trace:ddeml:WDML_CreateString added atom L"DISP(0x0806b3c8)" with HSZ 0xc003, trace:ddeml:WDML_InvokeCallback invoking CB16[088700ba] (32930 0 00000000 0xc000 0xc003 0 0 0) trace:ddeml:WDML_InvokeCallback done => 00000000 trace:msg:retrieve_reply hwnd 10023 msg 6 (WM_ACTIVATE) wp 0 lp 10028 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 8 (WM_KILLFOCUS) wp 1002b lp 0 trace:msg:MSG_peek_message got type 0 msg 8 hwnd 10023 wp 1002b lp 0 trace:msg:retrieve_reply hwnd 10023 msg 8 (WM_KILLFOCUS) wp 1002b lp 0 got reply 0 (err=0) fixme:dialog:MSGBOX_OnInit system modal msgbox ! Not modal yet. trace:msg:MSG_peek_message got type 5 msg 112 hwnd 10021 wp f100 lp 0 trace:msg:MSG_peek_message got type 5 msg f hwnd 10028 wp 0 lp 0 trace:msg:MSG_peek_message got type 5 msg f hwnd 10029 wp 0 lp 0 trace:msg:MSG_peek_message got type 5 msg f hwnd 1002a wp 0 lp 0 trace:msg:MSG_peek_message got type 5 msg f hwnd 1002b wp 0 lp 0 trace:msg:MSG_peek_message got type 5 msg f hwnd 10022 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 100 hwnd 0 wp 11 lp 1d0001 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 100 hwnd 0 wp 43 lp 2e0001 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 101 hwnd 0 wp 43 lp c02e0001 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 101 hwnd 0 wp 11 lp c01d0001 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessage32_16 message 0200, hwnd 0000, filter(0000 - 0000) trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessage32_16 message 0200, hwnd 0000, filter(0000 - 0000) trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessage32_16 message 0200, hwnd 0000, filter(0000 - 0000) trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessage32_16 message 0200, hwnd 0000, filter(0000 - 0000) trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessage32_16 message 0200, hwnd 0000, filter(0000 - 0000) trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessage32_16 message 0200, hwnd 0000, filter(0000 - 0000) trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessage32_16 message 0200, hwnd 0000, filter(0000 - 0000) trace:msg:GetMessageW (086f) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 0 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 5 msg 113 hwnd 10021 wp 5 lp 40a207cc trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 201 hwnd 0 wp 1 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 200 hwnd 0 wp 1 lp 0 trace:msg:GetMessageW (0257) mask=0000007f, bits=00000000, changed=00000000, waiting trace:msg:MSG_peek_message got type 6 msg 202 hwnd 0 wp 0 lp 0 trace:msg:send_inter_thread_message hwnd 10023 msg 30f (WM_QUERYNEWPALETTE) wp 0 lp 0 trace:msg:MSG_peek_message got type 1 msg 30f hwnd 10023 wp 0 lp 0 trace:msg:MSG_peek_message got type 5 msg f hwnd 10023 wp 0 lp 0 trace:msg:GetMessage32_16 message 000f, hwnd 0000, filter(0000 - 0000) trace:msg:retrieve_reply hwnd 10023 msg 30f (WM_QUERYNEWPALETTE) wp 0 lp 0 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 86 (WM_NCACTIVATE) wp 1 lp 0 trace:msg:MSG_peek_message got type 0 msg 86 hwnd 10023 wp 1 lp 0 trace:msg:retrieve_reply hwnd 10023 msg 86 (WM_NCACTIVATE) wp 1 lp 0 got reply 1 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 6 (WM_ACTIVATE) wp 1 lp 10028 trace:msg:MSG_peek_message got type 0 msg 6 hwnd 10023 wp 1 lp 10028 trace:msg:retrieve_reply hwnd 10023 msg 6 (WM_ACTIVATE) wp 1 lp 10028 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg d (WM_GETTEXT) wp 5 lp 40fa0874 trace:msg:MSG_peek_message got type 1 msg d hwnd 10023 wp 5 lp 40fa0874 trace:msg:retrieve_reply hwnd 10023 msg d (WM_GETTEXT) wp 5 lp 40fa0874 got reply 4 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 86 (WM_NCACTIVATE) wp 0 lp 0 trace:msg:MSG_peek_message got type 0 msg 86 hwnd 10023 wp 0 lp 0 trace:msg:retrieve_reply hwnd 10023 msg 86 (WM_NCACTIVATE) wp 0 lp 0 got reply 1 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 6 (WM_ACTIVATE) wp 0 lp 10021 trace:msg:MSG_peek_message got type 0 msg 6 hwnd 10023 wp 0 lp 10021 trace:msg:retrieve_reply hwnd 10023 msg 6 (WM_ACTIVATE) wp 0 lp 10021 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 310 (WM_PALETTEISCHANGING) wp 10021 lp 0 trace:msg:MSG_peek_message got type 1 msg 310 hwnd 10023 wp 10021 lp 0 trace:msg:retrieve_reply hwnd 10023 msg 310 (WM_PALETTEISCHANGING) wp 10021 lp 0 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10025 msg 310 (WM_PALETTEISCHANGING) wp 10021 lp 0 trace:msg:MSG_peek_message got type 1 msg 310 hwnd 10025 wp 10021 lp 0 trace:msg:retrieve_reply hwnd 10025 msg 310 (WM_PALETTEISCHANGING) wp 10021 lp 0 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10024 msg 310 (WM_PALETTEISCHANGING) wp 10021 lp 0 trace:msg:MSG_peek_message got type 1 msg 310 hwnd 10024 wp 10021 lp 0 trace:msg:retrieve_reply hwnd 10024 msg 310 (WM_PALETTEISCHANGING) wp 10021 lp 0 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073060 trace:msg:MSG_peek_message got type 1 msg 1c hwnd 10023 wp 0 lp 8073060 trace:msg:retrieve_reply hwnd 10023 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073060 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10025 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073060 trace:msg:MSG_peek_message got type 1 msg 1c hwnd 10025 wp 0 lp 8073060 trace:msg:retrieve_reply hwnd 10025 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073060 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10024 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073060 trace:msg:MSG_peek_message got type 1 msg 1c hwnd 10024 wp 0 lp 8073060 trace:msg:retrieve_reply hwnd 10024 msg 1c (WM_ACTIVATEAPP) wp 0 lp 8073060 got reply 0 (err=0) trace:msg:send_inter_thread_message hwnd 10023 msg 8 (WM_KILLFOCUS) wp 10021 lp 0 trace:msg:MSG_peek_message got type 0 msg 8 hwnd 10023 wp 10021 lp 0 trace:msg:retrieve_reply hwnd 10023 msg 8 (WM_KILLFOCUS) wp 10021 lp 0 got reply 0 (err=0)
------------------------------------------------- This mail sent through IMP: webmail.vmn.com.br
list@vmn.com.br a écrit :
Hello,
I tried running the point of sale apps this morning that communicate with DDE.
Both of them (DISP.EXE and PDV.EXE) are 16bit apps. There is also a 32bit DISP but I am using the 16bit version. I have access to the source of these programs.
The program init sequence is PDV.EXE calls DISP.EXE with a shell comand and then sets up DDE. PDV does all the processing, talks to external hardwares and then sends output for DISP to display.
it seems that the second program doesn't get a chance to initialize its ddeml facilities before the first tries to connect, hence the trouble can you provide more information on the start sequence ? sounds like a Wine bug in 16 bit program startup & synchro (or some undocumented features in 16 bit Windows code)
on PDV side between the spawn of DISP and the connection trial on DISP side between the program start and its DDEML initialization
A+