vetal_dnepr
21-04-2008, 00:23
Добрый день! Может кто сталкивался с такой проблемой - необходимо перевисти введенную строку (строка около 50 символов) из AnsiString в CHAR для отправки по почте - есть 2 варианта:
1й вариант
char Q[] = "mailto:test@mail.ru?subject=TEMA&body=";
sprintf(Q,"mailto:test@mail.ru?subject=TEMA&body=%s",Edit5->Text);
ShellExecute(0,NULL,Q,NULL,NULL,SW_SHOWNORMAL);
2й вариант
AnsiString S1 = Edit->Text;
char* ch1= S1.c_str();
char S[]= "mailto:test@mail.ru?subject=TEMA&body=";
strcat(S,ch1);
ShellExecute(0,NULL,S,NULL,NULL,SW_SHOWNORMAL);
И в обоих вариантах - все номально - программа компилится, почта открывается, данные в письмо заносятся, а потом билдер начинает ругаться, программа вылетает
В Call Stack пишет:
7c90378b ntdll.RtlConvertUlongToLargeDispatcher +0x46
7c90eafa ntdll.KiUserExceptionDispatcher +0xe
МОЖЕТ КТО ЗНАЕТ КАК С ЭТИМ МОЖНО БОРОТЬСЯ И В ЧЕМ ПРИЧИНА???
Всем откликнувшимся - большое спасибо!!!!
1й вариант
char Q[] = "mailto:test@mail.ru?subject=TEMA&body=";
sprintf(Q,"mailto:test@mail.ru?subject=TEMA&body=%s",Edit5->Text);
ShellExecute(0,NULL,Q,NULL,NULL,SW_SHOWNORMAL);
2й вариант
AnsiString S1 = Edit->Text;
char* ch1= S1.c_str();
char S[]= "mailto:test@mail.ru?subject=TEMA&body=";
strcat(S,ch1);
ShellExecute(0,NULL,S,NULL,NULL,SW_SHOWNORMAL);
И в обоих вариантах - все номально - программа компилится, почта открывается, данные в письмо заносятся, а потом билдер начинает ругаться, программа вылетает
В Call Stack пишет:
7c90378b ntdll.RtlConvertUlongToLargeDispatcher +0x46
7c90eafa ntdll.KiUserExceptionDispatcher +0xe
МОЖЕТ КТО ЗНАЕТ КАК С ЭТИМ МОЖНО БОРОТЬСЯ И В ЧЕМ ПРИЧИНА???
Всем откликнувшимся - большое спасибо!!!!