uruchomienie odzielnej aplikacji
uruchomienie odzielnej aplikacji
Jak za pomocą języka MQL4 uruchomić osobna aplikacje np. napisaną w C++?
Kod: Zaznacz cały
#import "kernel32.dll"
int WinExec(string NameEx, int dwFlags);
#import
...
WinExec("ścieżka do aplikacji",0);
Nie mogę wywołać tej funkcji
Np.
Brak reakcji.
A ogólnie chciałbym uruchomić program który znajduje się w folderze "expert".
Ewentualnie w jakimś podfolderze.
Np.
Kod: Zaznacz cały
WinExec("C:\Program Files\Aplikacja.exe",0);
A ogólnie chciałbym uruchomić program który znajduje się w folderze "expert".
Ewentualnie w jakimś podfolderze.
Poprzez TerminalPath() możesz odczytać katalog bieżącej instancji MT4.
A co do ścieżki do aplikacji to zwróć uwagę, czy nie zawiera spacji, a jeśli tak to escape'uj całą ścieżkę w dodatkowe " " i \.
A co do ścieżki do aplikacji to zwróć uwagę, czy nie zawiera spacji, a jeśli tak to escape'uj całą ścieżkę w dodatkowe " " i \.
Kod: Zaznacz cały
string appPath = "\"C:\\Program files\\Terminal\\experts\\app.exe\"";
WinExec(appPath,0);
Nadal brak reakcji . Wpisałem tak ścieżkę jak podałeś w kodzie wyżej .
Chyba coś jest nie tak u mnie z ta platformą . Ale tez sprawdzałem na Admiralu. I to samo
To jest zawartość skryptu który chce aby otwierał aplikacje.[/code]
Chyba coś jest nie tak u mnie z ta platformą . Ale tez sprawdzałem na Admiralu. I to samo
Kod: Zaznacz cały
#import "kernel32.dll"
int WinExec(string NameEx, int dwFlags);
int start()
{
string appPath = "\"C:\\Program Files\\MetaTrader - FXOpen\\experts\\take.exe\"";
WinExec(appPath,0);
return(0);
}
Oczywiście piwo się należy
Poprawiłem przeoczenia których wspomniałeś i działa.
---------------------------------------------------------------------------
Ponieważ sykrypt poprawnie otwiera wszystkie zainstalowane aplikacje .
Mam tylko problem z moja plikacją (exe) . Prosta która ma wyłączyć monito.
Napisana w C++ za pomocą Dev C++
Aplikacja jest konsolowa . I jak uruchamiam ręcznie to działa.
Poprawiłem przeoczenia których wspomniałeś i działa.
---------------------------------------------------------------------------
Ponieważ sykrypt poprawnie otwiera wszystkie zainstalowane aplikacje .
Mam tylko problem z moja plikacją (exe) . Prosta która ma wyłączyć monito.
Napisana w C++ za pomocą Dev C++
Aplikacja jest konsolowa . I jak uruchamiam ręcznie to działa.
Czy mogę was prosić jeszcze o pomoc?
Tak jak nadmieniłem wyżej aplikacja np. CCleaner uruchamia sie normalnie . Ale już aplikacja napisana przeze mnie nie chce się uruchomić , a znajduje się w tym samym folderze co plik . ccleaner.exe(jest to program do czyszczenia śmieci w PC korzystam z niego dla testów)
Aplikacja jest konsolowa. Jeśli uruchamiam aplikacje ręcznie wszystko jest w porządku. Pojawia się okienko konsoli i wykonywany jest algorytm.
--------------------
Jest również inne rozwiązanie , mogłbym eksportować dane z EA do pliku po czym Aplikacja te dane by przetwarzała. Jednak jest to dość prostackie rozwiązanie tego problemu . tym bardziej że nie wiem czy nie dochodziło by do konfliktu , bo EA jak i aplikacja korzystały by z tego samego pliku.
I teraz pytanie czy nie dojdzie do konfliktu kiedy np. EA i Aplikacja będa chciałby jednocześnie skorzystać z pliku.?
Co więcej aplikacja musiał bym uruchamiać sam.
Tak jak nadmieniłem wyżej aplikacja np. CCleaner uruchamia sie normalnie . Ale już aplikacja napisana przeze mnie nie chce się uruchomić , a znajduje się w tym samym folderze co plik . ccleaner.exe(jest to program do czyszczenia śmieci w PC korzystam z niego dla testów)
Aplikacja jest konsolowa. Jeśli uruchamiam aplikacje ręcznie wszystko jest w porządku. Pojawia się okienko konsoli i wykonywany jest algorytm.
--------------------
Jest również inne rozwiązanie , mogłbym eksportować dane z EA do pliku po czym Aplikacja te dane by przetwarzała. Jednak jest to dość prostackie rozwiązanie tego problemu . tym bardziej że nie wiem czy nie dochodziło by do konfliktu , bo EA jak i aplikacja korzystały by z tego samego pliku.
I teraz pytanie czy nie dojdzie do konfliktu kiedy np. EA i Aplikacja będa chciałby jednocześnie skorzystać z pliku.?
Co więcej aplikacja musiał bym uruchamiać sam.