Hatalar, hatalar, sorular - sayfa 2233

 
A100 :

Ancak bunu kaldıramazsınız - çünkü bu bir danışman kodudur veya başka birinin kodunun vakayla ilgisi olmayan binlerce satırını anlamak mı istiyorsunuz - bunun sonucu yalnızca bir gecikmedir?

Yukarıda size verdiğim görevi tamamlayın ve sonuçları kamuoyuna bildirin.

Neden yanlış kodu tekrar etmeliyim???? Neden bilinmeyen bir .ex dosyası eklemeliyim????

Özellikle FILE_SHARE_READ|FILE_SHARE_WRITE bayraklarına sahip bir dosyayı açarken bir hata varsa, lütfen bu sorunları gereksiz, yapay olarak oluşturulmuş hatalar olmadan yeniden oluşturun.

 
Alexey Viktorov :

Neden yanlış kodu tekrar etmeliyim???? Neden bilinmeyen bir .ex dosyası eklemeliyim????

Özellikle FILE_SHARE_READ|FILE_SHARE_WRITE bayraklarına sahip bir dosyayı açarken bir hata varsa, lütfen bu sorunları gereksiz, yapay olarak oluşturulmuş hatalar olmadan yeniden oluşturun.

Ve neden kodun hatalı olduğuna karar verdiniz?

Bir hatayı hangi biçimde bildirebilirim - bunda rapor ediyorum ve .ex dosyasını sizin için değil geliştiriciler için yükledim. Hatanın basit bir şekilde yeniden üretilmesine yardımcı olmak istiyorsanız, önerilerimi kullanabilirsiniz, yardım etmek istemiyorsanız, boş kötü amaçlı gönderilerle başkalarına müdahale etmeyin.

 
A100 :

Ve neden kodun hatalı olduğuna karar verdiniz?

Bir hatayı hangi biçimde bildirebilirim - bunda rapor ediyorum ve .ex dosyasını sizin için değil geliştiriciler için yükledim. Hatanın basit bir şekilde yeniden üretilmesine yardımcı olmak istiyorsanız, önerilerimi kullanabilirsiniz, yardım etmek istemiyorsanız, boş kötü amaçlı gönderilerle başkalarına müdahale etmeyin.

Gönderileriniz daha çok kötü niyetli gönderiler gibi. Benim ricam

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Hatalar, hatalar, sorular

Alexey Viktorov , 2018.07.23 14:16

Yardımcı olmaması garip. FILE_SHARE_WRITE bayrağı olmadan sadece 5004 alabildim

Yazma EA'sındaki dosya OnInit'te açılır ve yalnızca OnDeinit'te kapatılır. Aynı zamanda okuma danışmanında dosya sorunsuz okunur ve yazdırılır.

Eylemlerinizin daha doğru bir şekilde tekrarı için dosyayı nasıl yazdığınızı netleştirmek güzel olurdu.


size hitap etmedi, ancak yapay olarak oluşturulmuş bir hata nedeniyle bence geliştiricilerin dikkat etmediği iki yıl öncesine ait gönderileri sıkışıp kaldınız.

Ve bir kez daha tekrar ediyorum: Neden yapay olarak oluşturulmuş bir hatayı yeniden oluşturayım???????????

 
Alexey Viktorov :

Ve bir kez daha tekrar ediyorum: Yapay olarak oluşturulmuş bir hatayı neden yeniden oluşturayım???????????

Yapay olarak oluşturulan hatanın ne olduğunu açıklayın? bu cümleyi anlamıyorum
 
TheXpert :

dosyayı yazmak için açtıktan sonra (kodun 1. kısmı) bir Windows görüntüleyici ile görüntülemeyi deneyin. En azından sorunun ne olduğu ile netleşecektir.

açılırsa - ikincisi ile, değilse - ilkiyle.

Windows daha sonra ilk dosyayı açar. Sistem düzeyinde read, write, share_read bayraklarının ayarlandığını görüyorum. Ancak aynı dosyayı terminalde okumak için açmak 5004 verir. İlk EA dosyaya yazar, yani. sadece bazı bayraklarla açık pro forma değildir.

Zamanım olduğunda, gösteri için bir senaryo oluşturmaya çalışacağım. Ancak, bu konuda ilk yazan ben olmadığıma ve koddaki dosyalarla ilgili hiçbir zil ve ıslık olmadığına bakılırsa, eğrilik mevcut.

not. Belki biri zaten SD'ye yazmıştır? Cevaplar neler?

 
A100 :
Kesin konuşmak gerekirse, hata farklı Uzman Danışmanlardan aynı anda FileOpen( filename ) çağrısı ile ilgilidir (bayraklar bir rol oynamaz)
FILE_SHARE_READ bayrağı aslında en azından orijinal winapi'de münhasır olmayan okuma erişimi anlamına gelir
 
Stanislav Korotky :

Windows daha sonra ilk dosyayı açar.

işarete rağmen ikinci tanıtıcının özel okuma erişimi veya diğer yetkisiz erişim istediği anlamına gelir.
 
A100 :
Yapay olarak oluşturulan hatanın ne olduğunu açıklayın? bu cümleyi anlamıyorum

Sözlerimde gizli bir alt metin yoktur. Muhtemelen suni derinin ne olduğunu anlamışsınızdır. Bu anlayışa odaklanın.

ERR_CANNOT_OPEN_FILE hatasını FILE_SHARE_READ|FILE_SHARE_WRITE bayraklarıyla döndüren, şablonları ve tefli diğer dansları kullanarak ek manipülasyonlar olmadan kodu gösterin

Eğer teflerle oynanmadan hata tekrarlanmıyorsa, hata danslar sırasında meydana gelmiştir...

Eylem sırasını tekrarlıyorum:

Danışman 1:

OnInit'te ikili dosya yazmak için açılır.

Geçerli çubuğun açılışını her dakika dosyaya yazar.

Dosya YALNIZCA OnDeinit'te kapatılır.

Danışman 2:

Her dakika bu ikili dosyayı açar.

Son girişi okur, yazdırır.

Dosyayı kapatır.

Ve böylece her dakika tekrar eder.


Dosya açma hatası yok.

 

Burada, önce = true yazarak başlatılan bu basit komut dosyasında ve ardından = false yazan başka bir grafikte bir hata alıyorum.

 #property script_show_inputs

input bool writing = false ;

int OnStart ()
{
   int handle = FileOpen ( "xyz.foo" , FILE_READ | FILE_BIN | FILE_SHARE_READ |(writing? FILE_WRITE : 0 ));
   if (handle == INVALID_HANDLE )
  {
     Print ( "FileOpen failed: " , GetLastError ());
     return INIT_FAILED ;
  }
  
   if (writing) FileWriteInteger (handle, 0 );
  
   Print ( "handle=" , handle);
  
   while (! IsStopped ())
  {
     Sleep ( 1000 );
  }

   Print ( "Closing" );
   FileClose (handle);

   return 0 ;
}
 
Andrey Khatimlianskii :

Hatırladığım kadarıyla, orada bir zaman aşımı yapılandırıldı, bundan sonra fiyatın umutsuzca modası geçmiş olduğu düşünülüyor. Yani 3 dakika boyunca değişmediyse açamazsınız.

Bu durum için bir test komut dosyası yazdı. Son tik geldikten 64 saniye sonra NoPrice yakalandı. Belki de dakika zaman aşımı gerçekten buna değer. izleyeceğim...