Hatalar, hatalar, sorular - sayfa 1327

 

## 1. haneyi kullanamaz

 #define MACRO( x, y )   x ##y
void OnStart ()
{
         int i = MACRO( 1 , 5 );
         Print ( i );
}
 

Belirli bir kombinasyonda makro parametresini atlayamazsınız

 #define MACRO1( x )             void x() { Print ( __FUNCTION__ ); }
#define MACRO2( prefix, function )      MACRO1( prefix ##function )
#define MACRO3(         function )      MACRO2(         h2, function )
#define MACRO4(         function )      MACRO2( /*опущен*/ , function )
//---
   void f1() { Print ( __FUNCTION__ ); }
MACRO3( f2 )          //нормально
MACRO4( f2 )          //Ошибка: argument expected for the function-like macro
//---
void OnStart ()
{
        MACRO( /*опущен*/ , f1 ); //нормально
        h2f2();
        f2();                   
}
 
Karputov Vladimir :
Numara. Dosya standart dağıtımdan değiştirilmemiş ve MQL5 Storage kullanılmamıştır. Kullanıcı muhtemelen farklı bir "Veri Klasörü" girdi - en azından bu şu ana kadarki en uygun sürüm.
Bilgisayarı aradı. Dosya hala öldürüldü (( Kullanılan işletim sistemi Windows Server 2012'dir. Dosya, "C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5\Scripts" klasöründe düzeltildi (en son tarih - Mart 2015) ) Yukarıdan aynı ada sahip bir dosyanın üzerine nasıl yazıldığını anlamıyorum, ancak "C:\Program Files\MetaTrader 5\MQL5\Scripts" klasöründen (son düzenleme tarihi Ağustos 2014'tü). mq5, derlenen dosya en son sürümde kaldı, MQL5 Storage kullanmadım, şimdi kullanacağım.
 
kogriv :
Bilgisayarı aradı. Dosya hala öldürüldü (( Kullanılan işletim sistemi Windows Server 2012'dir. Dosya, "C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5\Scripts" klasöründe düzeltildi (en son tarih - Mart 2015) ) Yukarıdan aynı ada sahip bir dosyanın üzerine nasıl yazıldığını anlamıyorum, ancak "C:\Program Files\MetaTrader 5\MQL5\Scripts" klasöründen (son düzenleme tarihi Ağustos 2014'tü). mq5, derlenen dosya en son sürümde kaldı, MQL5 Storage kullanmadım, şimdi kullanacağım.
(Kullanıcı) dosyalarınız C:\Program Files\MetaTrader 5\MQL5\Scripts klasöründe olmamalıdır! Dosya orada göründüyse, yalnızca MetaEditor'un çalışmasına manuel müdahale nedeniyle. Dosyaları düzenleme ve oluşturma ile ilgili tüm çalışmalar C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5\... veri klasöründe yapılmalıdır.
 
Karputov Vladimir :
(Kullanıcı) dosyalarınız C:\Program Files\MetaTrader 5\MQL5\Scripts klasöründe olmamalıdır! Dosya orada göründüyse, yalnızca MetaEditor'un çalışmasına manuel müdahale nedeniyle. Dosyaları düzenleme ve oluşturma ile ilgili tüm çalışmalar C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5\... veri klasöründe yapılmalıdır.
neden olamaz? Önce oraya kopyaladım (C:\Program Files\MetaTrader 5\MQL5\Scripts), çünkü Dosyaları sunucuya yerleştirmenin özelliklerini bilmiyordum, sonra anladım ve doğru klasöre kopyaladım. Bunun "işe müdahale" olduğunu düşünmüyorum.
 
kogriv :
neden olamaz? Önce oraya kopyaladım (C:\Program Files\MetaTrader 5\MQL5\Scripts), çünkü Dosyaları sunucuya yerleştirmenin özelliklerini bilmiyordum, sonra anladım ve doğru klasöre kopyaladım. Bunun "işe müdahale .." olduğunu düşünmüyorum.
Bu doğru - manuel müdahale. Tüm dosyalarınızı C:\Program Files\MetaTrader 5\MQL5\... konumundan doğru yere aktarmanız (kesip yapıştırmanız) gerekir: C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5 \. ...
 
Karputov Vladimir :
İşte bu - manuel müdahale. C:\Program Files\MetaTrader 5\MQL5\... içindeki tüm dosyalarınızı doğru yere aktarmanız (kesip yapıştırmanız) gerekir: C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5 \. ...
peki ya kesmeseydin? ama koy..
 
kogriv :
peki ya kesmeseydin? ama koy..
Bu durumda, ezme durumunuz yakında geri dönecektir. Kullanıcının bir veri klasörü vardır - C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5\.... Dosyaları başka klasörlere yazmak istiyorsanız, tehlike ve risk size ait olur. Sonuçta, bu senin paran.
 
Karputov Vladimir :
Bu durumda, ezme durumunuz yakında geri dönecektir. Kullanıcının bir veri klasörü vardır - C:\Users\Administrator\AppData\Roaming\MetaQuotes\Terminal\9A8888D580475F4165FB840CCD79A65C\MQL5\.... Dosyaları başka klasörlere yazmak istiyorsanız, tehlike ve risk size ait olur. Sonuçta, bu senin paran.

peki ya /taşınabilir anahtar?

ve bu arada, bu "sdfgshndyueenerneb673756nr76,.t89.y80.tr76m5nbwb6qw6b3qvqvb6547nw8nme789m" ne tür klasörler? Yüklü birden fazla terminal varsa, hangi klasörün hangi terminale ait olduğunu belirlemek kolay bir iş değildir. Elbette bunları MT kullanarak girebilirsiniz, ancak diğer tüm durumlarda - saçmalık hala aynı. yani /portable bizim seçimimiz.

 
Andrey Dik :

peki ya /taşınabilir anahtar?

ve bu arada, bu "sdfgshndyueenerneb673756nr76,.t89.y80.tr76m5nbwb6qw6b3qvqvb6547nw8nme789m" ne tür klasörler? Yüklü birden fazla terminal varsa, hangi klasörün hangi terminale ait olduğunu belirlemek kolay bir iş değildir. Elbette bunları MT kullanarak girebilirsiniz, ancak diğer tüm durumlarda - saçmalık hala aynı. bu yüzden /portable bizim seçimimiz.

Kullanıcı bir kez denemeye başladı - dosyaların üzerine yazıldı. İkinci kez yanacağını sanmıyorum.
Neden: