Discussion of article "Arranging a mailing campaign by means of Google services"

To add comments, please log in or register
MetaQuotes Software Corp.
Moderator
208934
MetaQuotes Software Corp.  

New article Arranging a mailing campaign by means of Google services has been published:

A trader may want to arrange a mailing campaign to maintain business relationships with other traders, subscribers, clients or friends. Besides, there may be a necessity to send screenshotas, logs or reports. These may not be the most frequently arising tasks but having such a feature is clearly an advantage. The article deals with using several Google services simultaneously, developing an appropriate assembly on C# and integrating it with MQL tools.

Terminal connector

The only remaining issue is connecting the (unfinished) assembly to the terminal. At first glance, the task is simple. Define several static methods, compile the project and copy it to the terminal's Libraries folder. Call the static methods of the assembly from the MQL code. But what exactly should we copy? There is an assembly in the form of a dll library. There are also about a dozen assemblies downloaded by NuGet we actively use in our work. There is a JSON file storing data for accessing Google. Let's try to copy the entire set to the Libraries folder. Create a primitive MQL script (there is no point in attaching its code here) and try calling a static method from the assembly. Exception! Google.Apis.dll is not found. This is a very unpleasant surprise, which means that the CLR cannot find the desired assembly, although it is located in the same folder as our main assembly. Why is this happening? It is not worth examining the situation here in detail. All interested in details may find them in the famous book by Richter (in the section about searching for private assemblies).

There are already many examples of fully functional .Net applications that work with MetaTrader. Such issues occurred there as well. How were they solved? Here the issue was solved by creating a channel between a .Net application and an MQL program, while here an event-based model was used. I can suggest a similar approach involving passing the required data from an MQL program to a .Net application using the command line.

Author: Andrei Novichkov

To add comments, please log in or register