//+------------------------------------------------------------------+ //| 获得文本描述 | //+------------------------------------------------------------------+ string getUninitReasonText(int reasonCode) { string text=""; //--- switch(reasonCode) { case REASON_ACCOUNT: text="Account was changed";break; case REASON_CHARTCHANGE: text="Symbol or timeframe was changed";break; case REASON_CHARTCLOSE: text="Chart was closed";break; case REASON_PARAMETERS: text="Input-parameter was changed";break; case REASON_RECOMPILE: text="Program "+__FILE__+" was recompiled";break; case REASON_REMOVE: text="Program "+__FILE__+" was removed from chart";break; case REASON_TEMPLATE: text="New template was applied to chart";break; default:text="Another reason"; } //--- return text; } //+------------------------------------------------------------------+ //| 专家无法初始化函数 | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- 获得无法初始化原因代码的第一种方法 Print(__FUNCTION__,"_Uninitalization reason code = ",reason); //--- 获得无法初始化原因代码的第二种方法 Print(__FUNCTION__,"_UninitReason = ",getUninitReasonText(_UninitReason)); } |