"10 dakikada MQL5 için DLL kütüphanesi nasıl yazılır ve veri alışverişi yapılır?" makalesinin tartışılması - sayfa 5
![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
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
1) terminalin hangi sürümü 32 veya 64 bit?
2) dll'nin hangi sürümü 32 veya 64 bit?
1) seçim nedir? Bence buradan sadece x86 indiriliyor...
2) dll 32
MT5'i yeniden yüklemek aşağıdaki sonucu verdi. Komut dosyası çalıştırıldığında, günlükte aşağıdaki bilgiler görünür 'MQL5DLLSamples.dll' dosyasında fnCalculateSpeed fonksiyonu bulunamıyor
Her ihtimale karşı, kitaplığın bir anlık görüntüsünü Dependency Walker'dan ekliyorum .
MT5'i yeniden yüklemek aşağıdaki sonucu verdi. Komut dosyası çalıştırıldığında, günlükte aşağıdaki bilgiler görünür 'MQL5DLLSamples.dll' dosyasında fnCalculateSpeed fonksiyonu bulunamıyor
Her ihtimale karşı, kitaplığın bir anlık görüntüsünü Dependency Walker'dan ekliyorum .
Yeniden kurulan terminalin yapı numarası nedir?
Görünüşe göre eski, belli ki son 240 yapı değil.
Evet kesinlikle son değil...
240. yapıya güncelleme yaptıktan sonra, betiğin ilk çalıştırması iyi çalıştı. sevindim. Ancak sonraki lansmanlar yalnızca bir çökmeye neden oldu. MT 4 paralel olarak çalıştı.
Yeniden başlatmanın ardından her şey çalışıyor gibiydi! :-))
fnCrashTest(int arr) işlevi yorumlandı
Yardım eden herkese teşekkürler!
Genel olarak, dll kullanarak hesaplamaların hızını 2,5 kattan fazla artıramadım. Bu, MQL5'in yüksek hızından bahseder ve çoğu ticaret görevinde, kodu korumanın gerekli olduğu ve "ağır" hesaplamaların gerekli olduğu durumlar dışında, dll ile uğraşmanın bir anlamı yoktur.
Renat, makale için teşekkürler. Bir çok kişinin işine yarayacağını düşünüyorum. dll ile ilgili bir sorum var (Terminal 249, Editör 248)
Misal
Elimizde libra demo.dll var, sadece bir işlevi var
mql betiğimiz var demo.mq5
Derleyici hiçbir hata veya uyarı üretmez.
Terminalde çalıştırın, aşağıdakileri alıyoruz
Görsel hata ayıklamayı kontrol ederken, demo.dll işlevinin kendisinin bir dize değil, ilk karakterini aldığını da buldum.
Soru
Sorun nedir? MQL'den dll'ye bir dize insanca nasıl geçirilir?