control___(const char*zhao,const char*dong,shell___* sh,direct___ d,const char*code,const char*arg3){ init1__(sh,d); code_=code; add_arg__(zhao); add_arg__(dong); add_arg__(arg3); }
int args___::get_ini_file__(const string& filename){ string buf; int err=file_.get__(filename,buf); if(err){ err_<<file_.err_; return err; } add_arg__(buf); return 0; }
void args___::add_arg__(int argc,char** argv,int from){ if(from<0) return; for(int i=from;i<argc;i++){ string s=argv[i]; if(i==from){ size_t i1=s.rfind("--"); if(i1!=string::npos){ if(i1>0&&s[i1-1]==' '){ add_arg__(s.substr(0,i1-1)); continue; } if(s.length()>2){ if((s[2]>='0'&&s[2]<='9')||(s[2]>='a'&&s[2]<='z')||(s[2]>='A'&&s[2]<='Z')||s[2]=='-') ; else s.resize(2); } } } args_push_back__(s); } }