Разобралси. Проект win32
Создаем файл jpg с градиентной заливкой фона.
Спасибо зарубежным друзьям за код с комментами :)
//#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers // Windows Header Files: #include <windows.h> // TODO: reference additional headers your program requires here #include <Objidl.h> #include <gdiplus.h> using namespace Gdiplus; #pragma comment(lib, "gdiplus.lib")
#define MT4_EXPFUNC __declspec(dllexport) void mb( char* str) { WCHAR wszMessage[5000]; char* source = str; int k=0; while ( *source != 0) wszMessage[k++] = *(source++); wszMessage[k] = 0; ::MessageBoxW( NULL, wszMessage, L"Hello! :)", MB_OK); } int GetEncoderClsid(const WCHAR* format, CLSID* pClsid) { UINT num = 0; // тук ще запишем броя поддържани encoding-и UINT size = 0; // това ще е размера на encoder-а ImageCodecInfo* pImageCodecInfo = NULL; GetImageEncodersSize(&num, &size); if(size == 0) return -1; // грешка! нямаме encoder pImageCodecInfo = (ImageCodecInfo*)(malloc(size)); if(pImageCodecInfo == NULL) return -1; // грешка! няма свободна памет GetImageEncoders(num, size, pImageCodecInfo); for(UINT j = 0; j < num; ++j) { if( wcscmp(pImageCodecInfo[j].MimeType, format) == 0 ) { *pClsid = pImageCodecInfo[j].Clsid; free(pImageCodecInfo); return j; // успяхме! } } free(pImageCodecInfo); return -1; // грешка! не сме открили поддържка за дадения формат } MT4_EXPFUNC void __stdcall bbl_save_graphic() { GdiplusStartupInput gdiplusStartupInput; ULONG_PTR gdiplusToken; GdiplusStartup( &gdiplusToken, &gdiplusStartupInput, NULL); int w = 400; int h = 300; RectF* pRect; pRect = new RectF( REAL( 0), REAL( 0), REAL(w), REAL(h)); Bitmap* pBmp; pBmp = new Bitmap( w, h); Graphics* pGraphics; pGraphics = new Graphics( pBmp); // Создаем кисть фона с градиентом на все окно и полупрозрачностью LinearGradientBrush* pBackBrush; pBackBrush = new LinearGradientBrush( *pRect, Color(255, 255, 255, 255), Color(255, 150, 150, 150), LinearGradientModeVertical); // Закрашиваем фон pGraphics->FillRectangle( pBackBrush, 0, 0, w, h); CLSID jpgClsid; //взимаме CLSID за jpeg формат if(GetEncoderClsid( L"image/jpeg", &jpgClsid) != -1) { //записваме нашия файл pBmp->Save( L"C:\\Work\\Image1.jpg", &jpgClsid, NULL); } delete pRect; delete pBmp; delete pBackBrush; delete pGraphics; GdiplusShutdown(gdiplusToken); mb( "Helo4"); }
А комментарии делал на украинском языке?
elritmo:
А комментарии делал на украинском языке?
А комментарии делал на украинском языке?
Украинские комментарии не мои. Это чужой кусок. :)
Да вы чего, какой украинский 8)
Скорее, болгарский.
Скорее, болгарский.
Во народ упорный за терминал взялся... ;)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
chv:
Во народ упорный за терминал взялся... ;)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
Во народ упорный за терминал взялся... ;)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
Прикручено вместе с .NEТ, упорство не причем, все проверено:) Валерий, что это вы тут ехидничаете, каждый волен заниматься тем, на что он способен:)
chv:
Во народ упорный за терминал взялся... ;)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
Во народ упорный за терминал взялся... ;)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
Это всего лишь, чтобы нарисовать картинку http://babybearreports.narod.ru/342636/342636_rep.htm
xnsnet:
Прикручено вместе с .NEТ, упорство не причем, все проверено:) Валерий, что это вы тут ехидничаете, каждый волен заниматься тем, на что он способен:)
chv:
Во народ упорный за терминал взялся... ;)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
Во народ упорный за терминал взялся... ;)
Предлагаю сразу прикрутить к MT4 Windows Communication Foundation (WCF), и Windows Presentation Foundation (WPF) с SharePoint Services впридачу :-)
Прикручено вместе с .NEТ, упорство не причем, все проверено:) Валерий, что это вы тут ехидничаете, каждый волен заниматься тем, на что он способен:)
Да шучу я так, время позднее было, ночью всё кажется как-то по-другому ;)
На самом деле я избрал другой путь сопряжения .Net и MT4 терминала, но не считаю его единственно верным и уважаю другое мнение и другие идеи.

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
ехе с gdi я умею делать, а вот длл никак не начать
без mfc вылазят ошибки компиляции, а с mfc dll никак не вызвать из mt4.