Передача текста ошибки из DLL в EA(MT4) - страница 2

 
220Volt:

Если MessageBox совсем не устраивает, то можно консоль прикрутить:

void __stdcall fn(void)   // функция в dll
{
        try
        {
                 throw std::invalid_argument("illegal_param");
        }
        catch(std::exception &e)
        {
                if( AllocConsole() )                     // Создаем консоль, у процесса не более одной.
                {
                   // Связываем буферы консоли с предопределенными файловыми описателями.
                   freopen("conin$","r",stdin);
                   freopen("conout$","w",stdout);
                   freopen("conout$","w",stderr);
                }
                std::cout<<e.what();
        }
        // FreeConsole();                               // Удаление консоли
}
 Лично я пользуюсь MessageBox'ами и никаких проблем нет.

По моему, это только для CRT-функций работать будет.

Причина обращения: