Джентельментский набор разработчика MQL

 

Приветствую всех.

Предлагаю в этой теме делиться информацией о дополнительных программах/утилитах, которые мы используем в своем окружении в ходе разработок.

Итак, вот мой джентельментский набор.

1. Для создания динамических библиотек (DLL) и приложений:

2. Для исследования терминала (структуры окон, отслеживания сообщений):

  • Microsoft Spy++ v9.0
  • Windows Inspector v2.2

3. Для проверки зависимостей в DLL от других динамических библиотек

  • Dependency Walker v2.2.6

4. При необходимости использования баз данных:

  • MySQL
  • MS SQL Server
  • Oracle
  • MS Access 

5. Для разработок на уровне баз данных:

  • Quest Software TOAD (для MySQL, MS SQL, Oracle)

6. Для отладочных работ по отправке Email:

  • smtp4dev-2.0.9 (требует .net framework v3.5, можно перекомпилить под v4.x)

7. Для записи демонстрационных/обучающих видео клиентам:

  • WINK v2.0 

Дополняйте!

 
elugovoy:

Приветствую всех.

Предлагаю в этой теме делиться информацией о дополнительных программах/утилитах, которые мы используем в своем окружении в ходе разработок.

Итак, вот мой джентельментский набор.

1. Для создания динамических библиотек (DLL) и приложений:

  • MS Visual Studio 2010
  • Borland C++ Builder 6

2. Для исследования терминала (структуры окон, отслеживания сообщений):

  • Microsoft Spy++ v9.0
  • Windows Inspector v2.2

3. Для проверки зависимостей в DLL от других динамических библиотек

  • Dependency Walker v2.2.6

4. При необходимости использования баз данных:

  • MySQL
  • MS SQL Server
  • Oracle
  • MS Access 

5. Для разработок на уровне баз данных:

  • Quest Software TOAD (для MySQL, MS SQL, Oracle)

6. Для отладочных работ по отправке Email:

  • smtp4dev-2.0.9 (требует .net framework v3.5, можно перекомпилить под v4.x)

7. Для записи демонстрационных/обучающих видео клиентам:

  • WINK v2.0 

Дополняйте!

Для записи уроков и видео так же подойдет camtasia studio 8
 

Еще попробуйте компиляцию C++ кода прямо из MetaEditor при наличии установленных MSVC 2005/2008/2010/2012. Компиляются как DLL, так и EXE.

Особенность компиляции через едитор в том, что в DLL автоматически добавляется шифрованный блок со списком адресов функций, что автоматически распознается в крешгенераторе терминала и показывается стек вызовов с именами функций DLL. Это позволяет легче отлаживаться.

 
Renat:

Еще попробуйте компиляцию C++ кода прямо из MetaEditor при наличии установленных MSVC 2005/2008/2010/2012. Компиляются как DLL, так и EXE.

Особенность компиляции через едитор в том, что в DLL автоматически добавляется шифрованный блок со списком адресов функций, что автоматически распознается в крешгенераторе терминала и показывается стек вызовов с именами функций DLL. Это позволяет легче отлаживаться.

Отлично. Попробую. Спасибо за ЦУ. 

 
Renat:

Еще попробуйте компиляцию C++ кода прямо из MetaEditor при наличии установленных MSVC 2005/2008/2010/2012. Компиляются как DLL, так и EXE.

Особенность компиляции через едитор в том, что в DLL автоматически добавляется шифрованный блок со списком адресов функций, что автоматически распознается в крешгенераторе терминала и показывается стек вызовов с именами функций DLL. Это позволяет легче отлаживаться.

извиняюсь конечно за примитивность вопроса... но вынужден задать ))

открываю в MT5-editor свой с-файл (hello.c) 

#include <stdio.h>

int main() {

    printf("Hello!\n");

    return 0;

}

 f7 - fatal error LNK1181: cannot open input file 'kernel32.lib' LINK 1 1

когда открывается МТ-едитор, то он сразу обнаруживает мой компилятор С 2014.12.18 00:45:14.593 C++ compiler Microsoft Visual Studio 2012 found

 

что читать? или что делать?
 
thejobber:

извиняюсь конечно за примитивность вопроса... но вынужден задать ))

открываю в MT5-editor свой с-файл (hello.c) 

что читать? или что делать?

У меня все нормально копилирует и exe файл (если нет DllMain функции) создает:

2014.12.18 02:04:48.699 C++ compiler    "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\link.exe" "E:\Programs\MetaTrader 5\MQL5\Scripts\tmp\*.obj" /OUT:"E:\Programs\MetaTrader 5\MQL5\Scripts\Test.exe" /LIBPATH:"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\amd64" /LIBPATH:"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\x64" /INCREMENTAL:NO /NOLOGO /MANIFEST:NO /SUBSYSTEM:CONSOLE /OPT:REF /OPT:ICF /LTCG /LTCG /RELEASE /DYNAMICBASE /NXCOMPAT /MACHINE:X64 /MAP:"E:\Programs\MetaTrader 5\MQL5\Scripts\tmp\Test.map" /ERRORREPORT:PROMPT kernel32.lib user32.lib advapi32.lib shell32.lib uuid.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed
2014.12.18 02:04:48.653 C++ compiler    "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\cl.exe" "E:\Programs\MetaTrader 5\MQL5\Scripts\Test.c" /Fo"E:\Programs\MetaTrader 5\MQL5\Scripts\tmp\Test.obj" /I "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include" /I "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include" /Ox /Ob2 /Oi /Ot /Oy- /GL /D"WIN32" /D"NDEBUG" /D"_CONSOLE" /D"_WINDOWS" /D"_UNICODE" /D"UNICODE" /D"_CRT_SECURE_NO_WARNINGS" /FD /MT /GS- /Gy- /GR- /W3 /nologo /GF /Gm- /EHs /Gd /fp:precise /fp:except- /GR- /openmp- /c /TP /errorReport:prompt
2014.12.18 02:04:46.255 C++ compiler    Microsoft Visual Studio 2012 found

Приведите свой лог файл, пожалуйста.

Проверьте, что у вас не Express версия, SDK установлен и указанный код компилируется/собирается в студии.

 

Приведите свой лог файл, пожалуйста. 

0 2014.12.18 12:30:35.922 C++ compiler Microsoft Visual Studio 2012 found

0 2014.12.18 12:30:46.680 C++ compiler "D:\Microsoft Visual Studio 11.0\VC\bin\cl.exe" "C:\codeBase\devClub\bcw1\hello.c" /Fo"C:\codeBase\devClub\bcw1\tmp\hello.obj" /I "D:\Microsoft Visual Studio 11.0\VC\include" /I "C:\Program Files\Windows Kits\8.1\Include" /Ox /Ob2 /Oi /Ot /Oy- /GL /D"WIN32" /D"NDEBUG" /D"_CONSOLE" /D"_WINDOWS" /D"_UNICODE" /D"UNICODE" /D"_CRT_SECURE_NO_WARNINGS" /FD /MT /GS- /Gy- /GR- /W3 /nologo /GF /Gm- /EHs /Gd /fp:precise /fp:except- /GR- /openmp- /arch:SSE2 /c /TP /errorReport:prompt

0 2014.12.18 12:30:46.980 C++ compiler "D:\Microsoft Visual Studio 11.0\VC\bin\link.exe" "C:\codeBase\devClub\bcw1\tmp\*.obj" /OUT:"C:\codeBase\devClub\bcw1\hello.exe" /LIBPATH:"D:\Microsoft Visual Studio 11.0\VC\lib" /LIBPATH:"C:\Program Files\Windows Kits\8.1\Lib" /INCREMENTAL:NO /NOLOGO /MANIFEST:NO /SUBSYSTEM:CONSOLE /LARGEADDRESSAWARE /SAFESEH /OPT:REF /OPT:ICF /LTCG /LTCG /RELEASE /DYNAMICBASE /NXCOMPAT /MACHINE:X86 /MAP:"C:\codeBase\devClub\bcw1\tmp\hello.map" /ERRORREPORT:PROMPT kernel32.lib user32.lib advapi32.lib shell32.lib uuid.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed

Проверьте, что у вас не Express версия, SDK установлен и указанный код компилируется/собирается в студии.

у меня 2 студии, экспкресс 13 и ултимэйт 12, МТЕ как я понял видит 12ю. в обеих студиях этот файл работает без проблем

рекомендую так же не затягивать в долгий ящик и сразу проверить будет ли работать с 15 студией, т.к. для нас она теперь заменит многое... со слов разрабов http://channel9.msdn.com/Events/Visual-Studio/Connect-event-2014/311 прям теперь на с++ можно будет писать под что хоч! круть. 

Дополняйте! 

 teamviewer.com теперь это скайп и запись разговора, экрана, рабочего стола в одном флаконе. ну и + стандартная опция дистанционный доступ к телу клиента )) всем родственникам и знакомым установил, теперь не нужно ни к кому ездить что бы оказывать первую компьютерную помощь ))

C++: Conformance And Cross-Platform Mobile Development (Channel 9)
C++: Conformance And Cross-Platform Mobile Development (Channel 9)
  • channel9.msdn.com
The C++ team  has made a goal to achieve  C++11 and C++14 conformance in the Visual C++ compiler for Visual Studio 2015's final release. But there's more: Visual Studio 2015 will actually support another,  modern conformant C++ compiler – Clang for projects targeting...
 
thejobber:
у меня 2 студии, экспкресс 13 и ултимэйт 12, МТЕ как я понял видит 12ю. в обеих студиях этот файл работает без проблем

У вас по логам видно, что активный сейчас SDK не от 2012 студии:

"C:\Program Files\Windows Kits\8.1\Include" 

мы проверим работу выбора компилятора в мултисоставе, включая 2015 студию.

 

elugovoy:

4. При необходимости использования баз данных:

  • MySQL
  • MS SQL Server
  • Oracle
  • MS Access 

5. Для разработок на уровне баз данных:

  • Quest Software TOAD (для MySQL, MS SQL, Oracle)

Дополняйте!

4. Зачем такие тяжелые базы? Ведь клиенту придется их устанавливать, что не есть гуд. Мне достаточно MS Sql Server Compact version=4.0.8854.1. Достаточно вместе с MQL файлами скопировать одну-две DLL в папку терминала. Поддерживает все фичи Entity Framework, я использую Code First, классная вещь.

Подключается в проект прямо из Visual Studio через Package Manager Concole вот так:

PM> Install-Package SqlServerCompact
Attempting to resolve dependency 'Microsoft.SqlServer.Compact (≥ 4.0.8854.1)'.
Installing 'Microsoft.SqlServer.Compact 4.0.8854.1'.
... и еще выскочит много строчек ))

5. Дополню SQL Server Compact & SQLite Toolbox

Intel Parallel Studio XE 2015 - самый быстрый компилятор С++ для процов Intel + библиотеки.

Intel SDK for OpenCL Application 2014 beta

SQL Server Compact & SQLite Toolbox
SQL Server Compact & SQLite Toolbox
  • sqlcetoolbox.codeplex.com
SQL Server Compact & SQLite Toolbox is a Visual Studio add-in and standalone app , for managing all aspects of your SQL Server Compact/SQLite database files
 
elugovoy:


Дополняйте!

 Это не джентельменский набор, а "желет  Вассермана". Джентельменский набор болжен быть предельно прост и эффективен.  Пузырь водки+ конфета на закусь,  или шампанское+цветы.

Джентельменский набор разработчика MQL - это  терминал(с метаэдитором)+ интернетбраузер).

 
Edic:

 Это не джентельменский набор, а "желет  Вассермана". Джентельменский набор болжен быть предельно прост и эффективен.  Пузырь водки+ конфета на закусь,  или шампанское+цветы.

Джентельменский набор разработчика MQL - это  терминал(с метаэдитором)+ интернетбраузер).

 Это точно!

Еще в советские времена, по соседству нашего отдела, был один начальник отдела, который своим сотрудникам всегда говорил:

- Вы все для себя создаете искусственные трудности (или преграды) и делаете сверхчеловеческие  усилия, чтобы их преодолеть.

Я думаю, что основная цель всех разработок на MQL - получить прибыль. 

И без  использования DLL, внешних индикаторов, и даже классов, можно создавать великолепных прибыльных торговых роботов.

И нужно показывать своё искусство и знания не в области программирования, а в области торговли.