Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım 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
lib bölümlere bağlanmaz, çünkü teorik olarak kod farklı süreçlerde çalıştırılabilir.
Bunu kontrol etmek için, örneğin varyantınızı veya https://www.mql5.com/tr/code/1835 adresini kullanın.
Muteks adlandırılırsa, yalnızca metatrader'dan değil, herhangi bir işlemden tutamacını alabileceğimi doğru anladım mı?
Yazar için soru.
Sınıfı mt4'te kullanıyorum. Terminali kapatıp açarsam, her şey çalışmayı durdurur. Çıkış yolu, kapatmadan önce Uzman Danışmanları silmek ve terminali açtıktan sonra bunları eklemek için pek uygun değil. Bu sorunu aşmanın herhangi bir yolu var mı?
Ve ikincisi. Delphi'de yazılmış bir program tarafından oluşturulan dosya eşlemesini okuyamıyorum. Nüanslar ne olabilir.
Kısaca bunlar birçok terminalde çalışan işlem panelleri.
Terminali kapatıp açarsanız, her şey çalışmayı durdurur. Çıkış yolu, kapatmadan önce EA'ları silmek ve terminali açtıktan sonra bunları eklemek için pek uygun değildir. Bu sorunu aşmanın herhangi bir yolu var mı?
Bu tür bir başlangıçtan kaldırma sırasında dosyalara ne olduğunu günlüğe kaydetmek ve görmek gerekir. herhangi bir kilit yok.
Dosya eşlemesini okuyamıyorum
"read" ile winapi'nin hangi işlevi kastediliyor?
Böyle bir deinitializasyon sırasında dosyalara ne olduğunu günlüğe kaydetmek ve görmek gerekir. kilit yoktur.
"read" ile winapi'nin hangi işlevi kastediliyor?
Mesele şu ki
her zaman 0 döndürür.
Bu yüzden dosyanın açık olup olmadığını gerçekten anlayamıyorum.
Yukarıdaki resimde, henüz oluşturulmamış bir dosya eşlemesini açan Uzman Danışmanın günlüğü bulunmaktadır. Ve hiçbir hata yok.
Belki de işlev
CMemMapFile::Openint OnInit() içine değil, daha ileride bir yere, örneğin OnTick() içine eklenmelidir, ancak döndürülen tanıtıcı her zaman 0 olduğundan, dosyanın her tikte sürekli olarak açılmasını önlemek için bir kontrol yapma imkanı yoktur.
Ve ikinci soruda.
Delphi'de bir dosya eşlemesi oluşturan bir uygulama oluşturuyorum. Bağlanırken hatalar meydana geliyor. Yani doğru şekilde geçirilmemiş sayılar. Hizalamaya {$Align Off} ile başladım
'msvcrt.dll' içinde 0x04E91000'e erişim ihlali okuma gibi başka hatalar da aldım.
Şimdi veriler normal olarak 19 bayt hizalanıyor - "00:35:50.260 Panel v 1.00 GBPUSD.m,M5: OnInitsizeof(PipeData)= 19".
ancak okurken tüm veriler sıfırdır.
Mesele şu ki
her zaman 0 döndürür.
Bu yüzden dosyanın açık olup olmadığını gerçekten anlayamıyorum.
Doğru, CMemMapFile::Open bir hata kodu veya hata olmadığında 0 döndürür.
(CMemMapApi:'nin aksine, bir açık tanıtıcı döndürür ve hatayı geçirilen parametreye yazar).
Ve tanıtıcı m_hmem'dedir.
Delphi'de, bir dosya eşlemesi oluşturan bir uygulama oluşturursunuz. Bağlanırken hatalar oluşur. Yani doğru geçilmemiş sayılar.
dosyanın başındaki ayrılmış DWORD baytlarını hesaba katıyor musunuz?4 bayt mı? Deneyeceğim, saymadım.
dosyanın kaynakta nasıl yazıldığına veya oluşturulduğuna bakın.
m_size parametresinde
doğru ise, CMemMapFile::Open bir hata kodu veya hata olmadığında 0 döndürür.
(CMemMapApi:'nin aksine, bir açık tanıtıcı döndürür ve hatayı geçirilen parametreye yazar).
Ve tanıtıcı m_hmem'dedir.
Dosyanın başındaki ayrılmış DWORD baytlarını dikkate alıyor musunuz?var olmayan bir dosya eşlemesini açarken m_hmem. Bunun bir hata mı yoksa bir tanıtıcı mı olduğunu nasıl belirleyebilirim?
var olmayan bir dosya eşlemesini açarken m_hmem. Bunun bir hata mı yoksa bir tutamaç mı olduğunu nasıl belirleyebilirim?