in Search

BDDE connection error (XTYP_DISCONNECT with error #16390)

Last post 09-02-2007, 0:06 by Dad Pihto. 5 replies.
Sort Posts: Previous Next
  •  06-24-2007, 13:59 24467

    BDDE connection error (XTYP_DISCONNECT with error #16390)

    My custom developed application (Win32 DDE Client) connect to BDDE server (to 223 symbols). In  async mode after I receive the some number of the XTYP_XACT_COMPLETE messages (about 3-5) I receive XTYP_DISCONNECT message with error #16390. As I understand, error #16390 in hex format is 0x4006/DMLERR_INVALIDPARAMETER (symbol defined, for example, as AAFI-ASE:ASK:BDDE:TKR:\\<DEFAULT>\JO;AAFI/ASK). But, if symbols previously is loaded in the MS Excel then my application can connect to the BDDE server in sync/async mode without any problems (to all 223 symbols). Help me, please. What may be wrong in my case?

    P.S. I am sorry, my English is bad.

    Thanks.

  •  06-27-2007, 11:40 24488 in reply to 24467

    Re: BDDE connection error (XTYP_DISCONNECT with error #16390)

    Does folks understand my question/problem?

    Anyone can help me?

    Please.

  •  07-03-2007, 6:33 24563 in reply to 24467

    Re: BDDE connection error (XTYP_DISCONNECT with error #16390)

    May be this images will help detect a problem?

    This is not my program messages. As I understand this is the BDDE server messages.

  •  07-03-2007, 6:58 24565 in reply to 24563

    Re: BDDE connection error (XTYP_DISCONNECT with error #16390)

    Have you got the DDE server application running before you launch yuor application / excel application? Have you tried re-installing the Bridge data feed software?  Have you tried contacting the data vendor directly?

    This forum, although hosted by Equis (a Reuters company) deals mainly with Equis products such as MetaStock etc.  Perhaps you might have better luck getting support through the outlet from where you purchased the DDE subscription?


    wabbit Big Smile [:D]




    MS: 6.52 EOD, 7.x EOD, 8.0 PRO, 9.2 PRO w/QC, 10 PRO w/QC & MDK
    For custom MetaStock programming : http://www.wabbit.com.au
    My SkyPE status : wabbit.com.au SkyPE online status
    My SkyPE account : wabbit.com.au

  •  08-31-2007, 3:05 25188 in reply to 24563

    Re: BDDE connection error (XTYP_DISCONNECT with error #16390)

    Dad Pihto: what version of MS do you use?
    (мой инглиш тоже так себе :/ )
  •  09-02-2007, 0:06 25217 in reply to 24565

    Re: BDDE connection error (XTYP_DISCONNECT with error #16390)

    2 wabbit & sh2mg136

    >Have you got the DDE server application running before you launch yuor application / excel application?

    Yes.

    >Have you tried re-installing the Bridge data feed software? 

    No, I use Bridge server application remotely as black box.

    > Have you tried contacting the data vendor directly?
    > what version of MS do you use?

    No. I known only what my customer use software 'Reuters Station & Reuters Trader 8.1', maybe upgraded. Reuters Station & Reuters Trader software is black box for me.

    I have localized this problem and avoid it in my application (I hope). In my opinion the BDDE server has a bug and if the connection string has a wrong data (syntax is clear but semantic is wrong) then BDDE server retrun a wrong pointer to the data (maybe with memory leak and BDDE server is corrupted after some numbers of request - see pictures above). In this case it point to the Windows system memory (address is 0x00000004) and has bad data size (very long - 0xfffffffc):

     // Get the data
     if (true == bUseSyncDdeTrans)
     {
      // Copy the result data (provides access to the data in the hData DDE object)
      BYTE* pData = ::DdeAccessData(hData, pdwSize);
      // Is this a BDDE Server bug?
      if (0xfffffffc == *pdwSize) // 0x00000004 == pData
      {
       DebugLog(<< "::DdeAccessData Error: " << m_pServer->GetLastErrorString()
        << " Is data size ("
        << *pdwSize
        << ") too long?");

       *ppData = 0;
       *pdwSize = 0;
      }
      // If the function fails, the return value is NULL.
      else if (NULL == *pData)
      {
       DebugLog(<< "::DdeAccessData Error: " << m_pServer->GetLastErrorString());
      }
      else
      {
       *ppData = new char[*pdwSize];
       ATLASSERT(*ppData);
       memset(*ppData, 0, *pdwSize);
       memcpy(*ppData, pData, *pdwSize);
      }

      ::DdeUnaccessData(hData);
     }

    > This forum, although hosted by Equis (a Reuters company) deals mainly with Equis products such as MetaStock etc.  Perhaps you might have better luck getting support through the outlet from where you purchased the DDE subscription?

    I am sorry if I posted in the violation place. I found this forum as helpfull about Reuters BDDE server.

    2 sh2mg136:

    imho, твой инглиш намного лучше моего. Smile [:)]

View as RSS news feed in XML