logo
Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
Dad Pihto  
#1 Posted : Sunday, June 24, 2007 1:59:56 PM(UTC)
Dad Pihto

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 6/24/2007(UTC)
Posts: 4

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.

Dad Pihto  
#2 Posted : Wednesday, June 27, 2007 11:40:45 AM(UTC)
Dad Pihto

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 6/24/2007(UTC)
Posts: 4

Does folks understand my question/problem?

Anyone can help me?

Please.

Dad Pihto  
#3 Posted : Tuesday, July 3, 2007 6:33:37 AM(UTC)
Dad Pihto

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 6/24/2007(UTC)
Posts: 4

May be this images will help detect a problem?

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

wabbit  
#4 Posted : Tuesday, July 3, 2007 6:58:07 AM(UTC)
wabbit

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers, Unverified Users
Joined: 10/28/2004(UTC)
Posts: 3,111
Location: Perth, Western Australia

Was thanked: 16 time(s) in 16 post(s)
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 [:D]



sh2mg136  
#5 Posted : Friday, August 31, 2007 3:05:19 AM(UTC)
sh2mg136

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 8/31/2007(UTC)
Posts: 5

Dad Pihto: what version of MS do you use?
(мой инглиш тоже так себе :/ )
Dad Pihto  
#6 Posted : Sunday, September 2, 2007 12:06:10 AM(UTC)
Dad Pihto

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 6/24/2007(UTC)
Posts: 4

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, твой инглиш намного лучше моего. [:)]

Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.