Kendi MetaTrader uzantınızı (dll) oluşturun - sayfa 5

 

görüyorum ki sen büyük bir iş adamısın???

Bu kadar mal satabileceğin bir forum burası değil.

DGC OZFX EA'da tam olarak neyi değiştirdiniz?

firedoji:
Kolay!! Sadece tüm forex e-kitabını indirin ve içindeki talimata bakın. Oradan 200'ün üzerinde e-kitap ve biraz da EA alıyorum... Oradaki tüm EA'lar düzenlendi ve değiştirildi...

--------------------------------------------

Tüm EA İndir Tüm Göstergeleri İndir E-Kitap İndir
 
prasxz:
mt4 dll'yi web hizmetine bağlamak ve MT4'ün açık konumunu bir web sitesi üzerinden göstermek için php betiği yapmak, böylece MT4'ü olmayan kişiler web sitesinden gerçek zamanlı olarak görebilir mi?

Birisi bir süre önce harika çalışan bir MQL / MySQL örneği yayınladı, bununla ilgili tek sorun, çoğu barındırma şirketinin veritabanı sunucularına uzaktan erişime izin vermemesidir. Ancak sunucunuza tam erişiminiz ve kontrolünüz olsaydı, veritabanınıza bağlanacak ve her yeni sipariş için verileri ekleyecek bir EA yazardınız. Ardından web sitenizden veri tabanına bağlanın ve verileri okuyun... Bence bu en iyi yaklaşım olacaktır.

Artık bir MT4 DLL dosyası bir php betiğine bağlanabilir, ancak EA'dan Web Sitesine bilgi aktarmayı hiç denemedim, bunu tam tersi şekilde başarılı bir şekilde yapabildim ... Windows soketlerine bakmanız gerekir, ve HTTP_GET / HTTP_POST gibi işlevler .

Patrick

 
Mistigri:
Emin değilim, bu kitaplık tanıdık geliyor, bunu bir web sitesine bağlanmak için mi kullanıyorsunuz? Bunun yerine wininet.lib kullanmayı denediniz mi?

Buradaki sorunun def dosyası olduğunu düşünmüyorum, yoksa dll'niz bile yüklenmeyecek ve düzgün çalışmayacak ... Daha fazla bilgi sağlayabilirseniz (yani dll'de kullandığınız kodun bir parçası) o zaman belki yapabilirim yardım etmeyi dene.

Patrick

Merhaba Patrick!

Kütüphaneyi ve kaynak kodunu burada buldum:

https://www.mql5.com/en/forum/178272

Mesajımı oraya yerleştirdim, ancak admin onu bu konuya taşıdı ...

Teşekkürler!

 

İnternette bulunan okuma dosyası

Merhaba,

Bir EA'nın yerel makinede değil, İnternet'te bulunan bir dosyayı okumasını istiyorum.

FileOpen yalnızca dosya metatrader dizininde bulunduğunda çalışır.

Ac#-dll ile yoruldum ama " işlev çağırılamıyor" hata mesajını alıyorum.

Bu sorun için çok kolay bir çözüm var mı?

teşekkürler

 

Hata 127 Çözümü - işlev çağırılamıyor

Hata 127 Çözümü - işlev çağırılamıyor

Peki,

Sonunda dün gece buna bakmaya geri döndüm. Sorun, yanlış def dosyasını veya def dosyasını dll ile ilişkilendirmemekle ilgilidir.

Visual Studio 2008 Express'te bu şekilde düzeltirsiniz -

1) Projeye, özelliklere - veya alt-F7'ye gidin

2) Linker'a gidin - üzerine çift tıklayın ve bir açılır liste alırsınız

3) Girişi Seçin

4) Modül Tanımlama Dosyasını, def dosyanıza ne ad verdiyseniz o olacak şekilde değiştirin

Dosyanın yolunun ve tam adının bulunduğundan emin olun - örneğin .\MyDef.def

2008 Express versiyonunda bu, profesyonel versiyonlarda olduğu gibi otomatik olarak oluşturulmaz.

Bu ana suçlu. Yine de soruna neden olabilecek başka bağlayıcı/derleyici sorunları olabilir. Yapmanız gereken Metatrader4 ile birlikte gelen ExportFunction örnek projesini yüklemek. Bu, uzmanlar/DllSample klasöründe bulunur. Şimdi gidin ve özellikler sayfasına sayfa, öğe madde ve ExportSample veya ExpertSample (veya adlandırma kurallarıyla ilgili olarak ne kullanıyorsa) yazdığı her yere bakın, özelliklerinizi kendi adlandırma kurallarınıza uyacak şekilde değiştirin. Bu maddeyi madde madde inceledim ve sonra 127 hatasını alıp almadığımı kontrol ettim. Doğru modül tanım dosyası bir bağımlılık olarak açıkça belirtilene kadar bu hatayı almaya devam ettim. Bunun dışında başka şeyler olmayabilir demiyorum, çünkü her şeyi örnekle eşleşecek şekilde değiştirdim, ancak def dosyası açık olduğunda, bu onu düzeltti.

Dll'nin lib klasöründe olması gerektiğini unutmayın. Dahil etme dizininde, dll'yi açıkça içe aktaran ve işlev adlarını parametrelerle, dönüş türleriyle vb. listeleyen bir mqh dosyasına sahip olmalısınız. Ardından, göstergenize veya uzmanınıza başlık dosyasını eklemelisiniz. Bu yapmalı.

CodersGuru ve Mistigri'nin her ikisinin de bunun nasıl yapılacağı konusunda iyi örnekleri var, ancak profesyonel olmayan Express sürümleri, def dosyasını bir bağımlılık olarak açıkça eklemez ve bu, Express sürümlerini kullanan hepimizin sahip olduğu sorunun köküdür. (En azından, sorunu olan bizlerin seçilmesini sağlamak için belirli bir projeyi seçerken bunu açıkça eklemiyor.)

Ekli resme bakın. Unutmayın, muhtemelen yine de derleyici ve bağlayıcı değerlerinizin Metatrader ile birlikte gelen dışa aktarma işlevi örneğinin değerleriyle eşleştiğinden emin olmak istersiniz.

Saygılarımızla,

MG

Dosyalar:
properties.jpg  75 kb
 
fedecosta:
Merhaba Patrick!

Kütüphaneyi ve kaynak kodunu burada buldum:

https://www.mql5.com/en/forum/178272

Mesajımı oraya yerleştirdim, ancak admin onu bu konuya taşıdı ...

Teşekkürler!

Kusura bakmayın henüz bakma fırsatım olmadı, meşguldüm ama unutmadım ve bu konuda size geri dönmeye çalışacağım.

Peco07:

Bir EA'nın yerel makinede değil, İnternet'te bulunan bir dosyayı okumasını istiyorum.

2 seçeneğiniz var, web sitesine bağlanacak bir C# uygulaması yazın, bilgisayarınıza bir veri dosyası yazıp MT4'ten okuyun veya web sitesine bağlanacak bir C++ dll yazın, verileri okuyun....

C# yoluna giderseniz, şimdiye kadar DLL yolundan çok daha hızlı görünüyor... Bir c++ DLL yazmak istiyorsanız, başlamanıza yardımcı olacak bazı kodlar burada.

MT4 DLL Web Bağlantısı | Mıstıgri

MG_1:

Sorun, yanlış def dosyasını veya def dosyasını dll ile ilişkilendirmemekle ilgilidir.

Visual Studio 2008 Express'te bu şekilde düzeltirsiniz -

Bilgi için teşekkürler! Sakıncası yoksa yazılarınızın bazı bölümlerini sitemde yeniden yayınlayacağım...

 
Mistigri:
Bilgi için teşekkürler! Sakıncası yoksa yazılarınızın bazı bölümlerini sitemde yeniden yayınlayacağım...

Sorun değil, birçok insanın öğrenmek için oraya gittiğini biliyorum, bu yüzden umarım Express kullanıcılarına ve gnu vb. kullanıcılarına yardımcı olur.

-MG

 
fedecosta:
Selam beyler!

Bu kitaplığı kullanmaya çalışırken bir sorunum var.

Onları metatrader\experts\library'ye koydum

.def dosyasının yolunu doğru tanımlıyorum

... ancak EA'm kayıt defterine şu hatayı yazdırıyor: -65495

Sorun ne olabilir?

Ve çoğu, nasıl çözülür?

.def dosyasının bozulmuş olması mümkün mü?

Şimdiden teşekkürler...

Merhaba Fedecosta,

Def dosyasını doğrudan c:\ sürücünüzün altına kopyalamaya çalışın ... Bu benim için işe yarıyor gibi görünüyor.

Bunun DLL programlama ile ilgisi olmadığını unutmayın, bu EA'ya özeldir...

Patrick

 
Mistigri:
Selam Tim,

dev-c++ kullanırken def dosyası sizin için otomatik olarak oluşturulur, sorun şuna benzer işlev adlarıyla sonuçlanmanızdır:

EXPORTS

_Z11GetSMAArrayP8RateInfoiiPd@16 @ 1

_Z12GetHighValueP8RateInfoii = _Z12GetHighValueP8RateInfoii@12 @ 2

_Z12GetHighValueP8RateInfoii@12 @ 3

_Z13GetCloseValueP8RateInfoii = _Z13GetCloseValueP8RateInfoii@12 @ 4

_Z13GetCloseValueP8RateInfoii@12 @ 5

_Z11GetSMAArrayP8RateInfoiiPd = _Z11GetSMAArrayP8RateInfoiiPd@16 @ 6[/PHP]

Now you need to make sure you add the following check around your code

[PHP]

#ifdef __cplusplus

extern "C" {

#endif

#ifdef __cplusplus

}

#endif

VS2008 için yaptığım ancak bu sefer dev-c++ kullanarak örnek dosyalar ektedir...

Bu yardımcı olur umarım

dll dosyası yazarken bunu mu demek istiyorsun?

def dosyasındaki işlev , başlangıçta _z12 eklemeli mi?

bunun anlamı .mq4 dosyasında

çağrı işlevi: get_max_deviation

sonra .def dosyasında

aktarılan işlev: _z12get_max_deviation???

fonksiyon adından sonraki @ sayısı ne anlama gelir?

Teşekkürler

 
Mistigri:

VS2008 için yaptığım ancak bu sefer dev-c++ kullanarak örnek dosyalar ektedir...

Bu yardımcı olur umarım

Ekli dosyalar

MistigriFX Örnek Debug.mq4 (2,1 KB, 15 görünüm)

MSFXDEV.zip (8.6 KB, 17 görüntüleme )

Dosyalarınızı dl yaptım ve .cpp'yi resim gösterisine göre derledim

ancak hata oluşur

derleme yöntemim yanlış mı, onu dll'ye nasıl derlerim? (Ben bir c++ acemiyim ^^)

Dosyalar:
dev_dll.jpg  298 kb
Neden: