Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
F9 (Sipariş) tarafından çağrılan pencereyi nasıl yakalayacağımı söyle
Metin aranmaz.
Şimdiye kadar böyle yakaladım:
Merhaba!
Test cihazında çalışan Expert Advisor'dan MT tanımlayıcısını nasıl belirleyeceğimi söyler misiniz?
Tasarım:
çalışmıyor, çünkü0 döndürür.
Program şu anda açık mı? (belirtilen sembol ve nokta ile)
Program şu anda açık mı? (belirtilen sembol ve nokta ile)
Tabiiki.
Bu şekilde denedim.
Yoksa WindowHandle işlevinin bir özelliği mi (yardımda bununla ilgili bir kelime olmamasına rağmen ...)
yoksa aptal mıyım...
Tabiiki.
Bu şekilde denedim.
Yoksa WindowHandle işlevinin bir özelliği mi (yardımda bununla ilgili bir kelime olmamasına rağmen ...)
yoksa aptal mıyım...
Bu durumda, tek çıkış yolu FindWindowExA(...) kullanarak tüm pencereler listesinde Metatrader penceresini aramaktır.
Görselleştirme modunda, tutamaç sorunsuz bir şekilde elde edilir. Ve muhtemelen görsel modda DEĞİL'i test ediyorsunuz. O zaman her şey mantıklı: pencere yok, tutamaç yok. Açık pencerelerin geri kalanına gelince, anladığım kadarıyla bunlar test cihazında mevcut değil.
Bu durumda, tek çıkış yolu FindWindowExA(...) kullanarak tüm pencereler listesinde gerekli pencereyi aramaktır.
Evet, beşinci sayfanın İlnur ' ac kodunu uygulamaya çalıştım:
İşte strateji test cihazını başlatan ve tamamlanmasını bekleyen bir komut dosyası örneği. Düğme metni GetWindowTextA() işlevi kullanılarak okunur.
İlginç bir şekilde, test penceresinin görünür olması gerekmez.
Ancak bu yanılsama testçiden geçmedi. (Optimizasyon için test cihazından başka bir terminal çalıştırıyorum ve bu işlemin tamamlandığını izlemek istiyorum.)
Eğer zorlaştırmıyorsa FindWindowExA (...) için bir örnek veya link verebilir misiniz?
İşte benim pencere arama fonksiyonum:
SPY++'da sınıfın adını ve gerekli pencerenin başlığını arayın.
Konu kimliği kontrolünü yorumladım, çünkü bu durumda gerekli değildir (karşılaştırma için bir kaynak penceremiz yoktur).
Genel olarak eğer kullanacaksanız WinAPI fonksiyonları ile uğraşmanızı tavsiye ederim. İşlevlerin ayrıntılı açıklaması için MSDN'ye bakın ( http://msdn.microsoft.com/en-us/library/ff818516.aspx )
Sipariş penceresindeki (F9) enstrüman listesini nasıl alacağımı söyle?
Eleman sayısını alıyorum, ancak tam olarak satırları sayıya göre alamıyorum, -1 döndürüyor.
#define ID_SYMBOL 0x053E //seçilecek sembol adı
cm tutamaç ComboBox
İşte benim pencere arama fonksiyonum:
Alexey, teşekkürler, işlev çalışıyor, ama ..
Konu kimliği kontrolünü yorumladım, çünkü bu durumda gerekli değildir (karşılaştırma için kaynak penceremiz yoktur).
Yalnızca iş parçacığı kimliği gereklidir, çünkü İki terminalim var.
Başlık tanımlamasından çıktım, ancak yine de test cihazının altından iş parçacığı kimliğini nasıl belirleyeceğimi bilmek ister miyim?