Problem with long strings in DLLs

 

Dear guys


I need to send some price data to a dll. inside of dll, symbols are concatated to previous one and at lase forming a string like this:


USDCHF;GBPUSD;EURUSD;USDJPY;AUDUSD;USDCAD;EURGBP;EURCHF;EURJPY;GBPJPY;GBPCHF;EURAUD;NZDUSD;AUDNZD;AUDCHF;AUDJPY;CHFJPY;EURNZD;EURCAD;CADCHF;CADJPY;NZDJPY;AUDCAD;GOLD;


Problem is when length of this string becomes long (I think more than 128 characters). Program halts.


This is c++ code:


CString Symbols;

CString Asks;

CString Bids;

CString Digits;

bool S;


MT4_EXPFUNC void __stdcall AddPair( char *S, double Ask, double Bid, int Dgts)

{

CString Temp1(S);

Symbols.Append(Temp1);

Symbols.Append(CString( ';' ));


char Chars[9];

int decimal;

int sign;


_fcvt_s(Chars, 9, Ask, 4, &decimal, &sign);

CString Temp2(Chars);

Temp2.Insert(decimal,CString( '.' ));

Asks.Append(Temp2);

Asks.Append(CString( ';' ));


_fcvt_s(Chars, 9, Bid, 4, &decimal, &sign);

CString Temp3(Chars);

Temp3.Insert(decimal,CString( '.' ));

Bids.Append(Temp3);

Bids.Append(CString( ';' ));


char buffer[4];

_itoa (Dgts,buffer,10);

Digits.Append(CString(buffer));

Digits.Append(CString( ';' ));

}


Could you please help?

Reason: