From df20bb48755472ec507f6f73819af28bb40f407c Mon Sep 17 00:00:00 2001 From: fernando Date: Sat, 8 Feb 2014 17:48:05 +0100 Subject: [PATCH] =?UTF-8?q?Changeset:=20158=20v1.19.9=20-=20Nuevos=20items?= =?UTF-8?q?=20de=20configuraci=C3=B3n=20en=20foxbin2prg.cfg=20-=20Bug=20en?= =?UTF-8?q?=20Localizaci=C3=B3n:=20Al=20recompilar=20con=20el=20archivo=20?= =?UTF-8?q?de=20localizaci=C3=B3n=20foxbin2prg=5Fen.h=20renombrado=20a=20f?= =?UTF-8?q?oxbin2prg.h=20daba=20errores=20de=20sintaxis=20-=20Mejorada=20l?= =?UTF-8?q?a=20informaci=C3=B3n=20de=20depuraci=C3=B3n=20de=20los=20archiv?= =?UTF-8?q?os=20LOG=20-=20Nueva=20parametrizaci=C3=B3n=20de=20la=20cantida?= =?UTF-8?q?d=20de=20backups,=20ahora=20por=20defecto=20en=20un=20.BAK=20(a?= =?UTF-8?q?ntes=20era=20de=2010)=20-=20Habilitado=20el=20archivo=20de=20co?= =?UTF-8?q?nfiguraci=C3=B3n=20foxbin2prg.cfg=20por=20defecto=20-=20Cambio?= =?UTF-8?q?=20funcional=20por=20defecto:=20Ahora=20los=20timestamps=20est?= =?UTF-8?q?=C3=A1n=20desactivados=20por=20defecto.=20Esto=20se=20puede=20c?= =?UTF-8?q?ambiar=20en=20el=20archivo=20foxbin2prg.cfg?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- foxbin2prg.cfg | 42 +++++++++ foxbin2prg.cfg_ | 3 - foxbin2prg.pj2 | 6 +- foxbin2prg.pjt | Bin 342016 -> 344256 bytes foxbin2prg.pjx | Bin 1583 -> 1583 bytes foxbin2prg.prg | 236 ++++++++++++++++++++++++++++-------------------- foxbin2prg_en.h | 85 ++++++++--------- 7 files changed, 228 insertions(+), 144 deletions(-) create mode 100644 foxbin2prg.cfg delete mode 100644 foxbin2prg.cfg_ diff --git a/foxbin2prg.cfg b/foxbin2prg.cfg new file mode 100644 index 0000000..9db8ddc --- /dev/null +++ b/foxbin2prg.cfg @@ -0,0 +1,42 @@ +**************************************************************************************************** +* FOXBIN2PRG v1.19.9+ +* CONFIGURATION FILE / ARCHIVO DE CONFIGURACIÓN +*--------------------------------------------------------------------------------------------------- +* DON'T MODIFY THIS DOCUMENTATION SECTION / NO MODIFIQUE ESTA SECCIÓN DE DOCUMENTACIÓN +* +* DETAIL OF SUPPORTED VALUES / DETALLE DE VALORES SOPORTADOS +* If no values given, this are the defaults / Si no se proporcionan valores, estos son los predeterminados +* +* extension: xx2 && Default FoxBin2Prg extensions ends in '2' / Las extensiones por defecto de FoxBin2Prg terminan en '2' +* DontShowProgress: 0 && Show progress bar by default in multi-file processing / Mostrar barra de progreso por defecto en procesamiento multi-archivo +* DontShowErrors: 1 && Show message errors by default / Mostrar mensajes de error por defecto +* NoTimestamps: 1 && Crear timespampt by default for minimize differences / Vaciar Timestamps por defecto para minimizar diferencias +* Debug: 1 && Activate individual .Log by default / Activar .Log por defecto +* ExtraBackupLevels: 0 && By default 1 BAK is created. With this you can make more .N.BAK / Por defecto 1 BAK es creado. Con esto puede crear más .N.BAK +* +* EN: Note: This values have precedence over internal parameters and parameters used on scripts +* ES: Nota: Estos valores tienen precedencia sobre los parámetros internos y los parámetros usados en los scripts +* +* END DOCUMENTATION SECTION / FIN DE LA SECCIÓN DE DOCUMENTACIÓN +**************************************************************************************************** + +* EN: Uncomment for SourceSafe compatibility. You can change the extension on the right side. +* ES: Descomentar para compatibilidad con SourceSafe. Puede cambiar la extensión del lado derecho. +*--------------------------------------------------------------------------------------------------- +*extension: pj2=pja +*extension: vc2=vca +*extension: sc2=sca +*extension: fr2=fra +*extension: lb2=lba +*extension: mn2=mna +*extension: db2=dba +*extension: dc2=dca + +* EN: Uncomment to activate the new value, comment to deactivate and use the default +* ES: Descomente para activar el nuevo valor, comente para desactivarlo y usar el predeterminado +*--------------------------------------------------------------------------------------------------- +*DontShowProgress: 0 +*DontShowErrors: 1 +*NoTimestamps: 1 +*Debug: 1 +*ExtraBackupLevels: 3 diff --git a/foxbin2prg.cfg_ b/foxbin2prg.cfg_ deleted file mode 100644 index 23976ac..0000000 --- a/foxbin2prg.cfg_ +++ /dev/null @@ -1,3 +0,0 @@ -extension: vc2=vca -extension: sc2=sca -extension: pj2=pja diff --git a/foxbin2prg.pj2 b/foxbin2prg.pj2 index 5f829f6..d76e33b 100644 --- a/foxbin2prg.pj2 +++ b/foxbin2prg.pj2 @@ -26,7 +26,7 @@ _LegalTrademark = "Open Source" _ProductName = " FOXBIN2PRG" _MajorVer = "1" _MinorVer = "19" -_Revision = " 230" +_Revision = " 246" _LanguageID = "1034" _AutoIncrement = "1" * @@ -50,8 +50,8 @@ MODIFY PROJECT 'foxbin2prg.pjx' NOWAIT NOSHOW NOPROJECTHOOK loProject = _VFP.Projects('foxbin2prg.pjx') WITH loProject.FILES - .ADD('config\config.fpw') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="1132857145" ID="1131721714" ObjRev="0" /> - .ADD('foxbin2prg.prg') && *< FileMetadata: Type="P" Cpid="1252" Timestamp="1145283887" ID="1130644423" ObjRev="544" /> + .ADD('config\config.fpw') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="1131721714" ObjRev="0" /> + .ADD('foxbin2prg.prg') && *< FileMetadata: Type="P" Cpid="1252" Timestamp="0" ID="1130644423" ObjRev="544" /> * .ITEM('__newproject.f2b').Remove() diff --git a/foxbin2prg.pjt b/foxbin2prg.pjt index 7812e03d491a4975167ff799d2b348bbdd4463ec..7553918b84777ca922813e91e76b53729a54eab6 100644 GIT binary patch delta 18367 zcma)^30#!b_y5nc%?zvTtIDtlxS)XhF3W%@0s?NiAi=040agsDq_oV8 z2@)C76EsymWYZv1(y-iwZ0Pmr2`OpmrkpJcJU{ocJ{HlzC-`pTjr&GXKt88}6Q8q_l(s>p&Wb`kBZTZVPK zB*ZS38r>*hV7(G3)+?9A#unsyFR4yXs~hT-QDS2pEx(sk<3j`U3yRDog{4O8s@MSQ zoLC>9HDY70e+ca8gG7@4At2ORADbzpS<~VM2+v!ekLxHLwSF4cGT8#glf+vL1`Z^uyQ7-*$1KqnL2n~|H&IuZ4JTBB2NVzcZ zxR-RxmFnE+u0%;GsTcM)pgy^Xg#ZM{HfR~>c?Q{XV^6i1MjBR;&#RViJ=(jqMMpZM zaoe358r#r(S| z+f=U%k{hFVyEX^j5uN)c-E}6@j7oD!MNw%4X9ir;EKHsSOTN3tm;yu^#;re-^ex8(ET2h%a zsdRc)dFjM*b47(#%_l^)yXcWxdhuFzZ7z=G!oj-%D37tS;BToIQJ6ZSJbM8;Je+w8 zWZuG_xv9Low7eJQ_K~W z`BTc8G9DwTbrv7V*!}MrtNCV>S{zc~*{T_f4jG3(l(C>g#yUziKVCIaYvny!j?%+9 z3i^M^QH!bN#9u91j*>%;ogT_j^g@nadt2{!JWqAeNzcTh z6U$Ta(~Nz&G3FO)GOggc?{Lw)4|^4kU_S&pma)EQL(ux@n(B3*kfTaMx)VXx=R#fapem@Tl*Aq%yn3W z`O(p-=IZT`tE2s+W2-q=pMSJ3$>XD;&BKFAtCp`r1c`?Ek#%*XkHv#>laezta&rb| zjxc3sXJ+TPLz9u2n>NIhlbbLkD@V^QOo_u%T_9wek}`*6VNdl2m`3JiCnP2$4IY-2 zZW?Y%&vB*nByA(++pasMr<+Em<>Vp`->(hSyiE&~=B$~zrX(liCMW$ywQ%S*GmVQP!$NQ-C*R`<})Nr2AL<(jldm!m8p@hYIir`hSmLn&D{63k7?_zuFgP zn~U>Hp3E;-Yph0vy_18z<&i$lEH9c^RFYrJds*uWL~wS9@QD527Y*3E{JZ@_yB~`0 zuGYX65is;_2U;(6jvo>XFNHkeq|8&@Ki?2_UB^tW^T%N2L$oEvtL8zyBh@QiT^oJ) z_JaXGsa~2dxglzZ-1rz@+iI+nyTl1K)|Fi%n})i;{XXu;lIq8Pt809okNld~C?#`b zVp>LgR(7hfPl2hT%v_LAUNEU>T4_ftI{l2JI~4E{ZNyvCIEC0W1R-UhH!HB;X>Dz; zfJ$B4IvAVAUC#%;4s?$;G*tGsgzVT(W7&=wQh-=9)7rmVkac?30FS7GUSkT)75QTd zit{VX6;al?-9oKjc8y4==}Tx-hl)I6Ii_95X$3Q)jK-+ghhO42#zpDWtk7Qlx^@1i zT)Lz=R3FMiT&sH2{+> z0K+K&3m+dJtikq0z6`B&A-7MRBSIgt!?fxLz4+Xe_05_s{^n=CqmWtR4|GkAdj(=0UgAP_LXa zsBZhM0Bcsi*5Wq?Ygxab4p6$$MvN^_x^M^^J@-rEvDu@zVd`eD23**KP2ba+);q+4 zfN)->!A^}{+)39gW1&fPLQ+PxreUNe)mp7xFs6a(W#Gi&&Al0H$Z+;A_&(AyFFL`Y z;5pxlpt?559I>?a@yE%Z=sg5Uc7%_>wR@l#aOrZZ67|y1>rctO5}_rM!KlE@PiJvxCR~-W67mo ztLV0_7z;+VNHTSV)1pK7YpdO2mwM&6i^ISZc34aM1^0ta8+Y_z+;La6Y25MJAt`tr z=#Ym-RTwX@)!5%p=1pkr)xTw%{lu{*FYW=Mg7H6GNo zLK;i4Z<=5Pbx$mE{EI2g9-xa&zQZwaW(GJKYe?^Nb)h zB@aINImb2k!xxQClz0z=qM;E^X*{{Yugpu!$g+ketZl(vQ3wChx+|fpwOeA8hfKKx z({c>d>?^YU0kVG&CxXM8ojW8m*`!crUP?};5B<}H5&Y6T?(V|5OwBgs;kg8x=xgohoQk;T0QitFKpE%Epoc;8bKQ{cJwU&Bf-bIA<12Ew|NPfx~g1bkmhQ@aaOtSeKW5Pq>520kGqSu60m z-g+Fbf!4INNy6LK&1nmT7;B$F3k92X7hV&rS%Vh}yRAp@T5c^&Ukgi@A#1ti5Q`JC z?}PFr)okgNF+mVMv98YSiyEECZ0obiwRsq}<(>#H*a~aQtRT;i`IvPWGkb$pyIDA~kwq%J7>6KJO9}1~=d;Xg>6suN{5wmPFX%kZ>(G#iAfK=VT#m z*=m}zh^vd`>%}aqWw=o|W_@dTTeQKC!@Ihv1B-j^7+8w6&4{pIZQT6hIl`Jcg7NB& zn4r{TQaht{=tX~P-G~8OR*x){gqkh7F;B^On>YTxj=xQOJ`iv2a|6Qg7WKA^BG&A) zW?gK%W$e1mF-XVb@KLemSF7jY8CwdET=0fb=Eb>>2{o+RBxE>8%d*EW*cM6w26lwL&Ij<0T>AHshpl)=3N40Xyh2{eWen2xPI6_$IXbBr&?B zW;BJFjbb)r9-9S*ib$Oyyp^poR9t6hHhR9D-N@Fjy|@>Z<9SbEPsZ8>l2& zv!x$-ql~MOIs=#1NIy!JLGDESeioB=T7Gd=etA-9$%LYbRpq!vEiHMbDbzsbC(H#^ zmHFkaewsa|X=%wcb9rS^`6%4m@+7=yqPa3po#zQd@&=j`l1BRm0HI2Jnlb2FlRWT`f zfTnlD4Nrl&tPDEcr5lTMHypT1HxKW+EuUj+Goq#0*Nt zc|1FFRF@=85kjxJ$|2&KB=**EDN=MvW#1o{jJ}i8v|xwUXg7#8AV}Olh=rVxLd5Qa z*?<#LcxZ0AX6j3Dl}k#?r{otG;V3jbzqqt~m))#QHCOU`jvRiEw={>HM~>nrBba-w6e^aEWO21pwD`Zr*yvg*Oq@KL zS!yL;@z7}YYAq_WVhsDDR%$7JJeD1+MalP$V~w>^P(b_q=G3!Gr`uDHe4NFelwy;H z6lkGdR8d-93E!)%BB7)Z)u}R9?46~BJ?Oiw&uAKlhH5*Hy?s*Za&vyA8QEbxR$gDsrkp~J1}loZ~2@iNWaxyd{Q%`LpD>HO){5ZOQF7SqtR$t2rchH6ZD?cs<+%q3MRZ)!Rh zGEXV1oXL+x<%NH|r7GEy^Jqx-)ok4Fl7Gv{)taRTl|Igkr#4Fb5c8DMDQ~kSze|DQ z@pssVze_=4;yU*I?-(3e@3Zs2ORdC?A27pd)OpN@tkY>JpeXsH=9F-TD=N!NM&GKp z?-f-|A$~NesIbsnf;LAsmB`Ipn3t6>q|~FP%l@k9+a= zR_@99mHAKksxc{;*y6Twu(&XQ{dHD~5Us&H5u@{()>^oc*yVPz(RX>M#t!A%8Nn>) zP>A=Vc#vKz#8(~Ij&oAD^W09VlKhFi+(GsiN5nJbyc7}?+f~y$q%*4*R~gi?r%&js zf!bb%6crq6esv&QbRL;*8_a{8w00dgLqeZ?N-|5#d^EaGVl6L9v8|(vv|wk-!DJm`uAEd_ zm^xY0q2Uv{$wskn1zU6x1M0(>Z2d(kSX?`c?Y@Xkt+ud>7p1`V#sAUly|i5f4rWSP zhAA&8Js~IO!U8QUSPNs-R|G%t>4hxylGG;7|9LIYttn#D@P4gH-Lxz5c1Ym2tdTFU zm6tH=U0z~eT#~|^m%XG#_ak<-o9q`F{j$cs_HyJV;070ta8_n^u4&gw7J6A~<2>;L z%?vZ|WFI-mQu|4BDN>4NWEPv_Q;N*Rg%z_t*VLYrSui8BsxIb5UIja1Fxyrj~e||rNlMk}X$2DNlla~DQ#NyJaRc2qK7Vu!nYT2aG zHufh}^0h~7j(4a@{~+G6CXJ3NOZin=yHK7o?x-ohurMz(-4v%P{7}gJLZ`yKBwTV; zydTQ0U6K3)!@{_+ADW08V-YDZ7gm*<4}>w}RmrDdSU3+3AZINtb%v6T#^%$ zUhl%jUXua?qPy~-R*w{EWLLKM8m8Fq-P!tUa43H3$qsYwlfZ8C_aW)b@4D1Jy4MIE zyEPgzIWg6g%Rg>tGwOjVM^kOgV@1~`UB+L+y5!d93wKq~rAh8*o$d8$J0Y9v)^7Pg<(6R?vo5IEDXhBCKAf>6>$( z_`1dp6;R${n~>3nKi~T2B&NR2^%3@rGuLYTXa$bG$MtROb{9WXS?!<^n>TBLk474} zmFpwzk=lNu@uPN|Kj-==yWKZmsH`S#x$>nJ_-LdrzvB9K_DD;1YOFQc8{cti|FCA&UQN` zkO_5?pV$0guJ2;kn_9EBbyBN1uTZY<`cKQ^xTYX&Y0fd1<1p(P#-`UvZ9^7^Y0)Kh;X)}PVyI0ndcoTQ2$PpYRlpPE&phzMfBhiaca`y@Z2)bl1Wjt$l1C7FQ34HOE|8RmPXV%ZcpL z9h`q6P0XVnzQ)8X3I9F^J7JCeWU{#Y&0G3SlrG@TC(Qx?#aVR zr>eXHA2=<@(?TCDPp<;5?`6;C{mB|TraW}2rnARojrEdV966P>{Yz@4WF;hfPv@f1 z>zO&+vbR08l;_##zoftsnJ;O2Pu`|^$>s^z)3Wjl`Bp72(}El`tXrY!v;o_wQXdRh zL{3gjnPRTY$DWoS`v%+nmlWLo&v&?WANVc^=S`ZGKT+KjyR6d!nn(0!o0;cbDX3-b zrw{9^wsY=F@41e5X4R3hH?u64eQYInr6*+ev9Ij&YN)J>DKBumRS7c|7FCoL=g;gL z_D`2C?BrW=pzYFqX^zAq?@K;$C3&c8dH&<-S67PFudX;Gp?wMAq39Bgw-> zA%-1MlbJd9s|#%mm;aZWP_Yn(Nx zDZHh|DcMcjO5^mzCT^{9ax;fCadUctk*(Cp%l+1zM+Xo!I@6oy;WI+QC1R*8Q7=ad zzW;cE$R-)&FL8<0)=6G2xOi%jk&KsZkF&hkm6`qJd>3%5res;Qziibx6I3y_@d5HS zS6gHod6}T8MzGL0*^ljslq+0D+S3~4pnc4)9j$6@e@4l15{qpw=V?hy(A2Bj%Too` zGDeQk)Ww>5bd2mP_)f7WQeu}%HG>r$<*6d`i<4Vu@yfaSXWt6DU8P;BvN^@eOI&U5 z^pm}t%D+@igdOcKPdB(>NkJ`Nw+$R1zb^Q$u*ZADF0HiHCCHlvwk1gp)UsP``#woN zCimLDUv}AV*H+s`&XGMORxwWwcUK$dFb~5Jb7t4q z$iCd(nSDA>p6GJK9_bfb`}y*1u~m&-bJQ;V+7#Wz9$jY3UzI)B#0Bz9mt%Ij-`K?k z@|{-4?TQn2sg_G9fvhFryHIZDa?&1p$~I`B{Is4`zbuDq4Rh9Z?Pa-8a5-nUId98b zD$8=K3wF&#yM((DHT4z`7w`j@%XX71woE3k5<;%pHP`IYb-Q%K=C)kkE&1NGYi`-4 zKiTCsLl$3RU+l)+@Pw=E#BMo8jA-ER0W9(-T$DZM z%sltX-qx}~1~&F5-0QS-X;vs~F}K+0p!k|A#DHE3&N&Kr_BO`e*?itea@L}Pw^vs76Srf%p?~?Z=4>=u++qc?U%#EdD(2{ez|q4*K)WyN{CMo z6O&X^ysKr~K8k(3Uv4YDJC>c;FGq-9k7Y_V-i1QezFH0uS~AN4z9>}7-r~WDtg0Hx zUY*F6SIg1jg30U~&i|Xt&Q{Cq#52Xr`+yuNUMgn256I!-&0;qG09wy|3Y&94juH*i z*n0-{q>tzzb~v786aWwU>lL&eV)u+^LoEnr{& zjCA)dWM}#Nz?YcoLFfamEaspb9zJgwuO_|{infIV>Cr6Yq50LydNEdU5CuHBoUOon z$WJSH1XrzHQu2o7rlsR6hdKCM7Cm+7O;&plrTJqm6A#JlgpDlbkbK|SQ@T#8rMVO* zvu=mwc9uX<{lz@Lr zg(bo!ajsA;<_qzHAPLe?nZF8B7n&o?m7k#q-2v(!ohT$AJRdPcsc zjSN(x+3Y|i*7KUQn#Q}WCZp?W@(@X$wW4+2VrQhV#s}piEtZ+ z^BNfP%^5^Tz>~n?Gl`BpNz`5>f=B{B|2Y0EkqP_(*mVKo<5>a5{XLaJ9{dUs&eilA zxD4`$twgn8+@D(LX+X>&6aY)k@5p2fp^ySoYWgEubhbwq2x z6+Qx$;!3?27`Fkm4DuTR0u2Ihv_Me}xE&sEXeH2*P=Tg_ z4}&dX_}nf^pcUZj;Ey2pjuz-k@E!0e$fw&1v>V(2p4U#GogD-^3>MMKmmtr?UHc`l zr6Uyhnk&uffkUO9s0U}rvj+$?5IhLnIzgbJi2_xDbHR;}hbIX%4?G-v8*(R;Knub7 z;9AJfrlNr0VsOkrf&P<*76Mm-V+RRz1NZWu>(T!Up>GjJ0Z#>c>=bC_E`dG+ zSAhp%dYt@Gpjz-u@H4vw+OY?hz%E2jgQx7p2N3&k{0CdWYa#z$Ezkh)Jn)OSSZ?>T zK>0Y9(0`!#0r2BdWC~sgp7^Uk(~qN+;1|KZC(r_T&ViSJ??861MGJwg;Ej;GoW(c- zzXv`7`MV3aXK*F@A9(Ubf!1F~8sMYgoErjN{S))=1t_jVvHUjr>yAJlgYSWp>hZbK zU4ecA8!%9|LQZKA=nU8od>-=a_XWBO4g~kb9C-@!Q|Cq$3T`8cbi5OSqX zq$qGtu#aA(yDpf2{h;U%#VS{kR(T^4a3Q#tk4RQLUxFus`}-mSK2rM*Yz4m?B2te| z_+ke>w?7Cz139&iNYlXz#?7CQzsV8l2zVU0Bv+)hn7>n7Kn7>vhIaZ$%)ghRmm`w9g7<(wh3xZ}NGHMd;2n@x z;_1}lSI#TlgQ7H$R9H&rn_XJbNwYshav@v zWdkItO_k_Puo=8~phVp>BsvCu7JL%&B3$tJ`(u>^cf)GrKTe{7;Qio_$4g|IDA79b zS?~qOv!+Y*E4VLaM)VAcMq4DB5P&fOE}jQSeqN%Fp{Ro5Jmha*l;{F@0l0jzL{YCw z&_)emWdn9@q+zq^HFA8@;qAlQZ@VHuu{ydEYgE2_K zubh$Sy^Cl;@cZCSmn7PFS)v8tZQ#jQkl}TS)_{Kor{0igwkXrL;26v#OMgkmjwO?+ zCDG$hoPylXOC~G09DEw`WqiMBEBJNrt1V>;i^7_V>xMnxU68FYGG&9$fqQh6X=AKR z3&1zQ0Pksj`csSi%daXW!eIT6XxpYkkfk0v;*88d=v7; zJ~CYb$Ae$%E7PieGS!27f(Q1OY4T8+bgi+^gT1q5>RBk$H1KcW^N>@g%k&4h6Q=Gh z$Q4h?G$I7PMGLI|-cQT)_B{L+6N+&#NSTk?E6c0&fCGrYjVI zX9ajOI1REjL!njR|A9+~DkNts^fmYka3{zyc=m!VJD|u0ypgNW0Vuu(?|?jRxI)Ll zJHbw)6}p2*iNr<)o;yaNvat$zgZF~(L-x#5C=`q@CsRW?eqmOr(Eq^4!EZo5jBRr# z_zZabGxE=>LmQ{Q0Cp8)hkV8wU9478$Td+U6@18-&^@RHXRs$HSbF>o-r^bLhtuTkh?lm#Oe ziuHgV*f+hRvGjruKtA-5LIc2a!QmSf`gXHI&w!r;--PV7MWI)~FM!=YQ|RLz3T+2( z0H1|iyHla-;BUae-zwDZph7-vF-G|63i;2o3cX-~;vFcW&*4YGchQgSFv_u9&V;<~ zzCzo;N#MPZKXBF2G4Nt=HRQM!IvUiT=wF5XWL2w%6 z`yo2o555Q%+vsQ=o(>&|u7Q7se5#X!9&0~-5*u2@HjmH1(CZzzmV)K=*z?I|5S4o(1{g8a%eI$8lXgI`;KUvfUD zqkG^dz@?Dumgq?7gzXp{v=lA!x{ii`w}aCl&swRYXTdwc8zHw@qaz0X8JzRBj=r|M zr=zV<+=Ai^se1YkxCT5Ja#4kzo(KO9K08BCqh{*qTku)%e8?;2 z>S+(y9b4=dkZ0pq1`c>ZPqrm`8Vb$=AGH9UeiaEqF$D_KDm~r%ub!@e7lA|8 z>M89bJww4OH zQ%_}39D%{Udi0@eps&HLu*d%idAZI&(Y??b;9AJLd<+x^9u9scz(9sb1HA)&5!@GY z_YMZS4_*f@fm{}Epw7Lq6ocP^9F$_9iQtZ{vHoWQ>ING~=mYl%PC`(+fxa1Qpf2Eb z;9HQR#~bKd@CI-uj3Um$SID z6IFC`!aV`T3;6aZ)bt{*WduxdFkQmbyoxiRg8p9w#fR6BFwXC}3Y<#tGJIid0FFu< zaA;@+H%Y=#N!lRNRS#^%;9ZbM;w0qZg(e0E<67h|95iCRv2=sC$Ka5HbAhuTx(jT~ zlc>ld(Mo@G0l09EL|x(5|2M#bQb7^R5CMLBRv<<(IQT<}^5OIS1zrV?fX}xTKHtF* zjAHN%_gCc#D90R9&2 zJ3^t5JcZ7K4}gDwyf$B?tvAuo?&Yp+89oywE;6vbx zkc+W9Zouw%6dbZiM}J`VYmeRTGI-SwIts#W_Z|2qcn{=L*vwL~c{PAn{(-F=&rWb7 zIQuLLa2EUj4^Z5PLdI^lAG_OLu#9H3{HdeU*qjDo_i77%BU(?#uo;zLGwKL_sXG{( z%_Xo2{0cUk-Pl}~^UVl6`*A%@$6n!$y&(YE7cY7ddSaX z;c&r1gs&&jS9~GCJg>t-Vg!Ezc`oMpZf5STj2p`T&l~=Sm=FG*^*7MTDF%8SdGNvc k8dk@W7qB8CkDK6)kQbddkRS3;kmfg#XLoQSF@fm+0J1Gq%2n zQ?s<(sxi&dvfkyEOIB{FrKzO3QD_K$UuW)NLf@a?U%!Wso4KB^bDeXa`>fY}X59Ot z&kMJ_^+etmh$w!?B140;Ly_Op$z5Z1eCXt_lb^d{`ObZnQJ*q6B`H5IA!nRIy7Yw9 zwDgqRLWT6{2}xO*sc8duyzQ~ulh>YLk(LSJ!QNh3O?Ms|WeJ7$@Y2u)PYn%QqoSLm$^c zQW{;8EyvD8aPzmaYnra!iFEbOxD2>ls7X(|?rXZbG)<=u>s=wW!sUj`9hV2`{`RB? z_av!NhrgOeMfbOt$_fwllG?ZrZE&KL5lJc8d1+ahy81xN(7xeXH*$x!rKx{hY#UJ} z57fw4YSPj`pO7X-!Awx>yPacsXsCnx3*fyJg0JSgFCX zWk6(zTBy`$Z$z>+qLDS_$f6O)Sn38C6O1E^@}^ao3Nn+8#-cn^O?75rshtLz%7maM zWtL}@S5;RQR;E-|mRFjp;GJw5J9+#lOL=^2+;77ZUERZq`aE51sw#ZCXkuZNsVdBJ zFh11c93Sr4(4UM(V`|oj#I($~?3{tdFiU*AcR-lY7#8#BpICvhVV1IZe-!#^{Qp^K z&(!}d@X=d8-M;gbqPRzkw%y5AeoUD5z9!zi!7?bJtJ%>=dWu71x-|Jyo@nF{Gn;~Sg_1IAQVRZ?Eo#~W_Fw6+@fi5j$U zH9Y-RV^auf;6uaRA2i5RRFITZ?}vdep|$(h{`r=+vB_7IUyq0Lfv%~Yfa1Doo5I8s z3JvAia>(`^hVzND7jSTKH7@j-*dKXHO3AgOhP zm$R*{-9;1B6YXxEx?kz;YrOPmMHlp-Wq4BXpgLWXGi`lodlyYOS z$yiigX8EeChuNDPS=6=-ZVE)Fw-yz~nDQi48YQFGYkeLY%UztByljtG*N*DjBLi}& zRrPyhYzq0l#?84Y7zKOST0#s+6#2KO8Dmy7SM9OJre4j3)pelyj__;nr0mM_BCJ+r z#pT9AwesqC@vx1T&Ye4B5dK?tbA0yJ$n+-x1F^yCQ4Gl@m$QdSlX8-GRPm&we8=|aM_Kf%C zhY!^uW*gE`mc1z*+BS)FtPu)1qlkahB1klfjJhK$MscguAgQgTV`_kFjN!iK1w)I` z9aL!e{~p~hSQe!Ei6JY-vUnOsow3NF{hJ%xHkKO=kB{YphX21~Sq#iD+jEb!bq~T7 zd-oLnZ{LXZp^fcwq21Bw!uuMFE9$7Wcb%TusGIOZH7NexP?(JY^i= z$=ZlvbE9{Io>FQ`s*}o#O=|uC>@>Cj<5w3nAAIWlEprA&n7iU;f4bo2pFi3tF|HT` z5f2c{*a8PJMgm<$;1FxHO>GZR2BAVNm%0Gt5Gz7kx}_5d^+pmg&~vU$9o1XnX726{ zUgX%bEgc4hncr|lk$Y^#>gh8qF5=-^>_Ddk|2rGHp)p!=ciTW2{NPe!w76$GvX$g6 z)-}OBnwPfEo17@|0VYgilS27D$%XQg3eqyOErpSJ7GqkDWma0ZzItkoM_njANsUZJ zsHy>_jL2(6>FFsW(sJ`s)FfxSQ*uIHg5{I6sMb!Dix4+2BP%(DQQn}mTn%Lvq~>N> ziu$BjZlw8j_n@SNoPh~B1*th11qs6vGLupal#ra9os*TFl9TtOo`&b7<)vVpI#E&q zKE&NEGY8L;{;(K^w3if1k0CSVhX%_hLsGCqJQ#A&FH|&6gA2C1w6coH)nbwD|7*RA zs~21Tu%r>9XFsu2XFMZ?TF&F|Jj>wBXQX=k z?P|H2*;5*8F=jm@9k#rVzr8Gfz@iI#m^{C3&j6(YLJ5mMD zy((qF-h5Xow6bf`6(=>}3;03H@&!I{l7aj)XL%LWkp?-sjp|g&Z%4^FutjdZK3YcU z9O*%yw39dLn|*xa96r_qaq&sg)(wru6dh$-Vf8mlfYpJA0`qu2^-8Ocm7# zRO521D|`2DmdmCTPMmBiD6Fa~8DG||kB}u|l$M#6_thhG)kZSuC^;oJFDL8CjeU9O z?@E;H+m8?aU5R|c{DjCXQ)?94$m*% z=){h)esHro&{UmQQfkVrE-bCkrmJco@uPk$Q0|z`cV1CK<=?XTnJY@Pu6?d8oiDhp z1o@v=fm~@~Ntvk-tu}Eos-Bj|WhtKW zxxz|3Y+N774)+#=-X%6?RRl>qP zo2$CFqM}MuVYMj<@2gc4OUAm*Q+2e=FOe+JS6-m9v)wNh&op@fpI57dBurSSreQU= zm62nrD6gzOYge0dWSGh(?^>#Q8pu>yQ9UikR8(GB{M0gjy;cbboV83%bR+T7T!oml zqAD)KR9e1#84vwKX)RxTi}(FQ@gJSDQg!sC^0AmQ)fuMh3FXDA?zh+> z2vAZ{kc`1(d(Er5ww}9QSAw5@XM^hDLMdVjp;bj@-9}Y)rINBLRHz`!R{8w*RN13h zPMA1RO{vP?tS0HH%2ZvDj#?yb;d8E|6Blg}o$2R-J-8q%5oc6+13u=5uPb44&1d}f zb=`4ABPi&|uh!8q+#Au)a%LoA@+vJI$3`j+cL z(x~Z+ZrY$_`pmzDq_w5%V(+UUCZD2jB7W~rR2YY3{x_9i`5!%h`lb@39b_sj&M^o( zRKDfP%{P^{&W-M3snSv#;%~>YHnPr}AGnFe@b%-@Zz|CNt^sO#i<u$HOTVH7AvvixjY(EP+|=iIiVa#ie>#ZIy^S7TID~(2TM6)~&J-@rEnR-f;%9H8 zZQ5n?2e(n>?zuelj?!K}p35`tDDC8uVZ7#!64LtWNRicmXfmy=7;~bqQcSa+qxhCP zSQ=)H;osa*VtiK=s$R~Ni|MS+lHEnz<*pJfZ+n*axT_eSGFGZSUg{E6kd&T~n_G~P zk~b(TIX9qMP4s;v(H=CWrR1j6sOcW|^yHM(w9J%bF+sL%Xba zm2a*?m-bo857sFW&S&0H-2;ecq_6=0ylu^;r2jn_WLv zlM#ehPA)6LycRxN?P`m`r29lTy0q+?h`mB`Z7DrO1ZxZ$*rXnCdrW8A(>II(=vWYb)`{_i5Q(5|Rk{Vz81 zK|b@N8Pohlfj)>^npdZ6yP~D)a&cU`%Fa3}EG{m{N>5pD6MRugA=p;u-~dsIFP_;{ zQ&NQ%#iCeU4&SBr1Xr7{IG`|_iYHf^QUgVX)@WT(M)TtSon3WSZ)ICqziy*?>TQ}> zK2w5(;*V~y=Pj}odC(>YJXYkIVBs8KZ$49q%oFRey>ANPW9k)uxjuwHUyn8Au#vB< zSNz&+4;Aih&{NoWu&XDVrj!(!(#pn_M?~bKxi6XT zy{B|Af0!k15R4X2P8^t$C+6O=q5n#`suVs#m0F9sCzg~ow`y`>b)mXPKWq2U2#>Vn zfRSnjTNo|7=LkK_ zk;(d+%IY&rn$L|5if@F^0-?5bc%50Sa*LWzdy|iBKueY^vt{XX`7PlR?#S}hDwQ9v zK;~MZM>zZn*7L)noXAc5CT`v5vkydiq$7RhR+S$wC-NhqM>+g@TKN+XP|ny-dEo=a zcTBfkBE7vMU9(4J^+DbD3hMAb>(57ay}7NYey#eocu58ra^|1RgRpM>7g zarYCaRet;_hW#S+P7c5E7j0}Sy#0ZzYU1OWdR`ZLXGf+dZt?|T4U@qJZqZjYG8|JyG`QjkB^aqFQ><;SZ& zPAhbrvzhIKIm$^D9(R1JmC(C73Y_Ml^5cH@yoBD(;rFSp%06P|W*1ggnTkbBCRRSN z=Dy-DlDm^f^uOuNX~*qp>Z+YI9g%K<#}Az~Fdkf%RX0t4R+RP(!0g(zEf5(VrI z7DG3rr8L#4xeKoi;jR*E<6AXM)mz>#d^mpsX~P1&$ooVeg^04;yVhdcDCltOfgpD^K zZ;(BicQrDL^{A2UbYVC)BI~S9>@A6Z+?{#y!(CXF0S6TJaz^lN-I=ed;%LIIK4nv_ zg)uBvVIv{)d0m;wR)E#D8=EAtaYC%=&bnGrYLw(N(UG^*VU<~L_h55mpK^y%;jkvD z_kE`~+v8K|P^%nPH8<9<*4Fub*fbY58S*CsnZNo7961@#&8NieA{T| zV?8>WH7e4()+1xtlNtlwq-!cUShl@a#94^|#KR%ofXrZ4Qs^Ry@Q@8n#1t zteU~r@bDTIVJ(}<1}bd75VyR@x?=gx*Ym>lEQ0&YVuK9_9QhAgpP9vCG(LwM%3+6f z#JXh;bC&$RcPK}NWowTf$~-=4CMJaY2G*JTzl9F&GM@$W>os_sk#pH|GCKxm{{8E$ z9Z$AmRQ$7w8TipTOv@wYVJ!XVDD)>QpU3`|gMM}>ryLfJ1Z+1n@awBk(1|zLG{YH3 z>RCQ~A-m^u&LQB?z}|A_dGR7P&~U*aT(o|&h|SP393l|!w2Za0j#(V-E53Ie z@?D2jM?AsGe0ceKHpTFlL;l-(Ydw2PW2kp1_c;0@h+is^y6`od*f9gnFYLGb$2wy( z+bkKd_SlsN?{@o;X;>o!-gyTbXf^L(pC~w1Z+6gHkm_;a>Y^6_%`dOIv1YyZ9Mkj#8VF6ArMpC{~P{j9Hi#Xig{J{Kp(GSc=*;!|&#XqnBxsA-X{m8s{{7I(a-w0)EOXVM-Br7d^I-i7cOWQ&j zE0p*3EtI7~sdZ|h9Dt&I#f6FXjQNrIdAsAQC4Bpih@z^zvS2KJh4Y##_xX{<$*lu< zn)qxNDDrz-W@PI4o5&*fu?cb7A%UV8%ZFKhOMim=bRhTt3I3&lJVSiW4CF83Gw2PQ z8-BEsUXYZZi-Y*w6fMEZ%gR_C$dCTSg5>K#{N_(Mfa(##U4Lf&AydLc$$DEBoRr{O zv=*7$g!7c2S;(lmuEGh&3F)@8y}YbPyfi%=sW~axSvh%XYF4_f0%!V)RA-SF?|R~3 z@R4MtKi~H=3+wMUSh(4e@D^&z`N&N=4iV{in)CvsKjJrZC^w#B?X-RKg$v)eTJ~~# z#9>%IpLB|a%S%RbehNX+){%VYDHbJ9DBu@QAy%4Qz%{2?v>aH(yPO6OF5q3obG9&Sz2h*cW-O_&oaxuMzqOukmGq z{pRz}1#eiu&!0tQCNJW;bNC!%;a$$*3xblRJpCNXe{K~oJIC5fFYsmO*hA+R<=f<; zyhv*lzV;W^K6i|iz-G~Y-Em5g5~SWzAtjJ330kW;Mt3MI;uy`M#nK{ao9rPUlV#}` zJS@^}I!;67N%A7;wp1vE%6C`-bn)*8KI%M+(q5F0QJBJKooB-gvJ`5|c2Q2?r_Qry zB~NS01?DCNAEQdiLwXUH$cb9Xv2t@cizREtMfO}gyCAPw!T$`^MDx~Rn$E6UTdg6Z z%NlZ**3ePw@G#99ojGj+(QhS0A7O0>Luc!rA^Hi|esD*@&k`+|O7sI5uJk$Vsndv} zWg>jg3jCS&GEpLU6Zl=&KjC^4`~mm@>|7jwuLLKcjA^j_z9X88)#k87W=aKkVY5re zP&);OzOc7qgBuOL4lcs}6@7|mIv9st^fl}!vG-WPf#5pWGtNQ>hk}E#4ZVl!C^!Vk z>~#oAXM-!j`I1Ceu!8>#o)2DxHGIAk4*j&4I^Z3!ce&tz28_3Px(VCc4R4y@wPpyP z0|Gq|C>p6D9*X&eDx##QY^ zbPL>Ru|#+NBhhy7UGSzQc;#Cr(U)KYy5&CX-_}c13l0TaHb}H;2hK~J(f>IR24nay zuu4?pjKaa4cS^K-7c}q~@PyqGJ^WmvkHE#?)n7<-Zl6S#z!Si)e~Ckrukfvhf#@0V ze%R7C=x1;lcoXbF|HUgZxB`3y_SGX2CFA#yR1M+f?M80)Gvj^g9lwYb7cGp9NcC ze|jDB?^Os_AQaxf$<$4WR)g9)G z-#GZeFC4CbeZU7`Fa8I=SpbKF;~K=FtW2J+MD4+QVDHgk{$)eRf-pia(>7fH0q1~6 z;r!bl6aFpmOz_vRhqaaI68HE(8zAkf}5a^KUAIQV4$8GJQQvrUhUza?6Ixw0pEn+rg{B;|gTD zY?A3WFh(vd#JS_X@%UkfJDvtyF+rw3%4KQ`{vG^gg-qGgWqKBDz`)hbl*#vHnGS*5 zf_KCAGrxnAAN)ox6~cjaG9B9_(+%)w@RZFmP5e%#Fi)ac;MqrHI(ZU>co8iFKlh_d z?Jvlb0p1Dz33l9{GJOob1U?6QH%_2jyz#p=jC^tGREU$Nr@$S+u1zwT%VdS-K^O!f zKv5`4uh2g5c<@QsZE<3BA3O(q9Coy~LNPvA=fNjnI|nE<9{gYM9@x&I3atW*sdfyD z%ZBy})q-Wrlp#2a(RNeF=t~p}-qB4lQ&V4sDj{S;*xU~O_U6RVmb`HO2(^wW$h? z#e(xHcnnx)HY@boiwb=Xp%TJE9F?TJrqHio3)mUwBA;3miu1=D2H%4H{9AZp@ImnV zu)Dvl(0cGW@UtJHb+#$=5PSiA3ih}7?*MKASS7(zK2@k@7w!R;Ff%%tcPr%dr9wj? zghJQ@`}hfk=72|mr~jak*C`YTE(LFg{onIw!a%Hy;EW3j9l5B`NbtMhxxeCumlc`< z{v2%jU7;0!qgBAIF>^-Y2aWj>BmXwY3pSI?=xHsZ@eoEqkadgNN8q<%FBqz!E8tJTLD(|8;0J_%f%k(0 z$7`rFw!zmT5xjtR!LCF2^d|TycqX>Qm!H+pJK!I|Uga7(jO#!o`u{A1$f+7SiEWQX zVSs@Pr)ek;@s=<64{(>)@pQN>;6K6odH7E^xR!(Qe+B3YY`+B>S_8%}ooNf~rZ+US z6|BW-IDesr`YqMa7vQ$wL$HUf)X?uy=>Jp*w*YssZ+b^#qW~wY)6j1l-~_G$d%UZm z7+e#;Q@|ZR)X?!A8d?Ni4%U2x8}8K5*WeGqy+75^pl>yF6^w&vdLFhH_T7SZL~npo zVGqBlp?hWsL0BF+;2Z3_3)>_30AGjw9bV41f~SFR!p>5(6x;!YfnS3Cvy+xOfLDP3 zf$iz6r9!Y+e*3^q!8H!N8e9sy2G_ITwcrn6@5E)UfUpk2EkFaV$>0s(2!oamxoYV- z@NV!O*a-+}SAxF)kB1%Pt)+F~AHha{Eq#MayfmBv-xfADekZU2%Xeqk<U}*iI&D!n6=acLPrQRNlV+O zpqAil@F&k}Y3y_@9R=ru=fn1SMN6l^v%tMzCoIrXXcwZ5;PJ4REz;6cV6g!mft|Dz zO%DDXJc(=R!b&a81)m2itF$!TyiQB|ATVq=J>S#P=&f1`i9z#&UxeL#reOe z?=0?!AJ zMhk(ty0bl%AN5dh6Lm2a|j@o~xBNMm-_$k=4 zag~ERfjtlCX!3Df;5@MAgpR)bNk^N(mEh4o>*$R$I{FzrAAI@(p7@fEf_r241jk<1 z(TOYg6)E`3Hdy~}+&~}R)6r50dhF?5_jP3b2Tu)l1~who6#i4rA z_d@}2@XXOuYM!2!ftQO6uqO@I(+2Q*@LJe63-q)Pycb+MR!9~FdCxe||)YHLv_^%S+Ic5knUr)(v^)zw--fqFuVE_3kp7;p_Bt~pL zyY%$Zem#8!HiNgr?()5!JmRrEgGa%hd4hf*e-FFL+lhh`Q9K0Z;3y5vM9BA%8Nvz(35fZgL(KOO{5CkeAEFh+beRaTHh@c$H1rBW zwAtVfz+H!Es6RrmJ>Xs7E3o(HYsd*9);@5>FholTxkA8o;G~HfI#Z4tf**iit0S+Cin*I4%q)Efy=-r zVQ<8C{R`rO+2FB#v=ol*8Nb4ySHY)XmrXzr0)7YF7TfRMDcJwJU_0Fip<*ibcWjrN z!F#|?*e+kg?l>E}$Sx8Xz3yNBzO<(UfAv4!ftm4{0D40t))P0R+quMVSkG2 zP4MsFiZiGHu9e^`;4o} zcs=-ytH}R{j!Lj{ZUHyIzJrzX6|fb&)=5u|Sh$L?QXT?-G)7O|U&G2IV>] porque es ReadOnly' - #DEFINE C_CONFIGFILE_LOC 'Archivo de configuración:' - #DEFINE C_CONVERTER_UNLOAD_LOC 'Descarga del conversor' - #DEFINE C_CONVERTING_FILE_LOC 'Convirtiendo archivo' - #DEFINE C_DATA_ERROR_CANT_PARSE_UNPAIRING_DOUBLE_QUOTES_LOC 'Error de datos: No se puede parsear porque las comillas no son pares en la línea <>' - #DEFINE C_DUPLICATED_FILE_LOC 'Archivo duplicado' - #DEFINE C_ENDDEFINE_MARKER_NOT_FOUND_LOC 'No se ha encontrado el marcador de fin [ENDDEFINE] de la línea <> para el identificador [<>]' - #DEFINE C_END_MARKER_NOT_FOUND_LOC 'No se ha encontrado el marcador de fin [<>] que cierra al marcador de inicio [<>] de la línea <>' - #DEFINE C_FIELD_NOT_FOUND_ON_FILE_STRUCTURE_LOC 'No se encontró el campo [<>] en la estructura del archivo <>' - #DEFINE C_FILE_DOESNT_EXIST_LOC 'El archivo no existe:' - #DEFINE C_FILE_NAME_IS_NOT_SUPPORTED_LOC 'El archivo [<<.c_InputFile>>] no está soportado' - #DEFINE C_FILE_NOT_FOUND_LOC 'No se encontró el archivo' - #DEFINE C_EXTENSION_RECONFIGURATION_LOC 'Reconfiguración de extensión:' - #DEFINE C_FOXBIN2PRG_ERROR_CAPTION_LOC 'FOXBIN2PRG: ERROR!!' - #DEFINE C_FOXBIN2PRG_INFO_SINTAX_LOC 'FOXBIN2PRG: INFORMACIÓN DE SINTAXIS' - #DEFINE C_FOXBIN2PRG_INFO_SINTAX_EXAMPLE_LOC 'FOXBIN2PRG [cType_ND cTextName_ND cGenText_ND cNoMostrarErrores cDebug]' + CR_LF + CR_LF ; - + 'Ejemplo para generar los TXT de todos los VCX de "c:\desa\clases", sin mostrar ventana de error y generando archivo LOG: ' + CR_LF ; - + ' FOXBIN2PRG "c:\desa\clases\*.vcx" "0" "0" "0" "1" "1"' + CR_LF + CR_LF ; - + 'Ejemplo para generar los VCX de todos los TXT de "c:\desa\clases", sin mostrar ventana de error y sin LOG: ' + CR_LF ; - + ' FOXBIN2PRG "c:\desa\clases\*.vc2" "0" "0" "0" "1" "0"' - #DEFINE C_FOXBIN2PRG_JUST_VFP_9_LOC '¡FOXBIN2PRG es solo para Visual FoxPro 9.0!' - #DEFINE C_FOXBIN2PRG_WARN_CAPTION_LOC 'FOXBIN2PRG: ¡ATENCIÓN!' - #DEFINE C_MENU_NOT_IN_VFP9_FORMAT_LOC 'El Menú [<>] NO está en formato VFP 9! - Por favor convertirlo a VFP 9 con MODIFY MENU <>' - #DEFINE C_NAMES_CAPITALIZATION_PROGRAM_FOUND_LOC '* Se ha encontrado el programa de capitalización de nombres [<>]' - #DEFINE C_NAMES_CAPITALIZATION_PROGRAM_NOT_FOUND_LOC '* No se ha encontrado el programa de capitalización de nombres [<>]' - #DEFINE C_OBJECT_NAME_WITHOUT_OBJECT_OREG_LOC 'Objeto [<>] no contiene el objeto oReg (nivel <>)' - #DEFINE C_ONLY_SETNAME_AND_GETNAME_RECOGNIZED_LOC 'Operación no reconocida. Solo re reconoce SETNAME y GETNAME.' - #DEFINE C_OUTPUT_FILE_IS_NOT_OVERWRITEN_LOC 'Optimización: El archivo de salida [<>] no se sobreescribe por ser igual al generado.' - #DEFINE C_PROCEDURE_NOT_CLOSED_ON_LINE_LOC 'Procedimiento sin cerrar. La última línea de código debe ser ENDPROC. [<>]' - #DEFINE C_PROCESSING_LOC 'Procesando archivo' - #DEFINE C_PROCESS_PROGRESS_LOC 'Avance del proceso:' - #DEFINE C_PROPERTY_NAME_NOT_RECOGNIZED_LOC 'Propiedad [<>] no reconocida.' - #DEFINE C_REQUESTING_CAPITALIZATION_OF_FILE_LOC '- Solicitado capitalizar el archivo [<>]' - #DEFINE C_SOURCEFILE_LOC 'Archivo origen: ' - #DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_LOC 'Error de anidamiento de estructuras. Se esperaba ENDPROC pero se encontró ENDDEFINE en la clase <> (<>), línea <> del archivo <>' - #DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_2_LOC 'Error de anidamiento de estructuras. Se esperaba ENDPROC pero se encontró ENDDEFINE en la clase <> (<>.<>), línea <> del archivo <>' - #DEFINE C_UNKNOWN_CLASS_NAME_LOC 'Clase [<>] desconocida' - #DEFINE C_WARN_TABLE_ALIAS_ON_INDEX_EXPRESSION_LOC '¡¡ATENCIÓN!!' + CR_LF+ 'ASEGÚRESE DE QUE NO ESTÁ USANDO UN ALIAS DE TABLA EN LAS EXPRESIONES DE LOS ÍNDICES!! (ej: index on <>.campo tag nombreclave)' + #DEFINE C_ASTERISK_EXT_NOT_ALLOWED_LOC "No se admiten extensiones * o ? porque es peligroso (se pueden pisar binarios con archivo xx2 vacíos)." + #DEFINE C_BACKLINK_CANT_UPDATE_BL_LOC "No se pudo actualizar el backlink" + #DEFINE C_BACKLINK_OF_TABLE_LOC "de la tabla" + #DEFINE C_BACKUP_OF_LOC "Haciendo Backup de: " + #DEFINE C_CANT_GENERATE_FILE_BECAUSE_IT_IS_READONLY_LOC "No se puede generar el archivo [<>] porque es ReadOnly" + #DEFINE C_CONFIGFILE_LOC "Usando archivo de configuración:" + #DEFINE C_CONVERTER_UNLOAD_LOC "Descarga del conversor" + #DEFINE C_CONVERTING_FILE_LOC "Convirtiendo archivo" + #DEFINE C_DATA_ERROR_CANT_PARSE_UNPAIRING_DOUBLE_QUOTES_LOC "Error de datos: No se puede parsear porque las comillas no son pares en la línea <>" + #DEFINE C_DUPLICATED_FILE_LOC "Archivo duplicado" + #DEFINE C_ENDDEFINE_MARKER_NOT_FOUND_LOC "No se ha encontrado el marcador de fin [ENDDEFINE] de la línea <> para el identificador [<>]" + #DEFINE C_END_MARKER_NOT_FOUND_LOC "No se ha encontrado el marcador de fin [<>] que cierra al marcador de inicio [<>] de la línea <>" + #DEFINE C_FIELD_NOT_FOUND_ON_FILE_STRUCTURE_LOC "No se encontró el campo [<>] en la estructura del archivo <>" + #DEFINE C_FILE_DOESNT_EXIST_LOC "El archivo no existe:" + #DEFINE C_FILE_NAME_IS_NOT_SUPPORTED_LOC "El archivo [<<.c_InputFile>>] no está soportado" + #DEFINE C_FILE_NOT_FOUND_LOC "No se encontró el archivo" + #DEFINE C_EXTENSION_RECONFIGURATION_LOC "Reconfiguración de extensión:" + #DEFINE C_FOXBIN2PRG_ERROR_CAPTION_LOC "FOXBIN2PRG: ERROR!!" + #DEFINE C_FOXBIN2PRG_INFO_SINTAX_LOC "FOXBIN2PRG: INFORMACIÓN DE SINTAXIS" + #DEFINE C_FOXBIN2PRG_INFO_SINTAX_EXAMPLE_LOC "FOXBIN2PRG [,cType ,cTextName ,cGenText ,cNoMostrarErrores ,cDebug, cDontShowProgress, cOriginalFileName, cRecompile, cNoTimestamps]" + CR_LF + CR_LF ; + + "Ejemplo para generar los TXT de todos los VCX de 'c:\desa\clases', sin mostrar ventana de error y generando archivo LOG: " + CR_LF ; + + " FOXBIN2PRG 'c:\desa\clases\*.vcx' '0' '0' '0' '1' '1'" + CR_LF + CR_LF ; + + "Ejemplo para generar los VCX de todos los TXT de 'c:\desa\clases', sin mostrar ventana de error y sin LOG: " + CR_LF ; + + " FOXBIN2PRG 'c:\desa\clases\*.vc2' '0' '0' '0' '1' '0'" + #DEFINE C_FOXBIN2PRG_JUST_VFP_9_LOC "¡FOXBIN2PRG es solo para Visual FoxPro 9.0!" + #DEFINE C_FOXBIN2PRG_WARN_CAPTION_LOC "FOXBIN2PRG: ¡ATENCIÓN!" + #DEFINE C_MENU_NOT_IN_VFP9_FORMAT_LOC "El Menú [<>] NO está en formato VFP 9! - Por favor convertirlo a VFP 9 con MODIFY MENU <>" + #DEFINE C_NAMES_CAPITALIZATION_PROGRAM_FOUND_LOC "* Se ha encontrado el programa de capitalización de nombres [<>]" + #DEFINE C_NAMES_CAPITALIZATION_PROGRAM_NOT_FOUND_LOC "* No se ha encontrado el programa de capitalización de nombres [<>]" + #DEFINE C_OBJECT_NAME_WITHOUT_OBJECT_OREG_LOC "Objeto [<>] no contiene el objeto oReg (nivel <>)" + #DEFINE C_ONLY_SETNAME_AND_GETNAME_RECOGNIZED_LOC "Operación no reconocida. Solo re reconoce SETNAME y GETNAME." + #DEFINE C_OUTPUT_FILE_IS_NOT_OVERWRITEN_LOC "Optimización: El archivo de salida [<>] no se sobreescribe por ser igual al generado." + #DEFINE C_PROCEDURE_NOT_CLOSED_ON_LINE_LOC "Procedimiento sin cerrar. La última línea de código debe ser ENDPROC. [<>]" + #DEFINE C_PROCESSING_LOC "Procesando archivo" + #DEFINE C_PROCESS_PROGRESS_LOC "Avance del proceso:" + #DEFINE C_PROPERTY_NAME_NOT_RECOGNIZED_LOC "Propiedad [<>] no reconocida." + #DEFINE C_REQUESTING_CAPITALIZATION_OF_FILE_LOC "- Solicitado capitalizar el archivo [<>]" + #DEFINE C_SOURCEFILE_LOC "Archivo origen: " + #DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_LOC "Error de anidamiento de estructuras. Se esperaba ENDPROC pero se encontró ENDDEFINE en la clase <> (<>), línea <> del archivo <>" + #DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_2_LOC "Error de anidamiento de estructuras. Se esperaba ENDPROC pero se encontró ENDDEFINE en la clase <> (<>.<>), línea <> del archivo <>" + #DEFINE C_UNKNOWN_CLASS_NAME_LOC "Clase [<>] desconocida" + #DEFINE C_WARN_TABLE_ALIAS_ON_INDEX_EXPRESSION_LOC "¡¡ATENCIÓN!!" + CR_LF+ "ASEGÚRESE DE QUE NO ESTÁ USANDO UN ALIAS DE TABLA EN LAS EXPRESIONES DE LOS ÍNDICES!! (ej: index on <>.campo tag nombreclave)" #ENDIF ******************************************************************************************************************* @@ -374,6 +374,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM + [] ; + [] ; + [] ; + + [] ; + [] ; + [] ; + [] ; @@ -388,6 +389,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM + [] ; + [] ; + [] ; + + [] ; + [] ; + [] ; + [] ; @@ -415,10 +417,11 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM l_ShowErrors = .F. l_ShowProgress = .F. l_Recompile = .F. - l_UseTimestamps = .T. + l_UseTimestamps = .F. l_MethodSort_Enabled = .T. && Para Unit Testing se puede cambiar a .F. para buscar diferencias l_PropSort_Enabled = .T. && Para Unit Testing se puede cambiar a .F. para buscar diferencias l_ReportSort_Enabled = .T. && Para Unit Testing se puede cambiar a .F. para buscar diferencias + n_ExtraBackupLevels = 0 nClassTimeStamp = '' o_Conversor = NULL o_Frm_Avance = NULL @@ -664,6 +667,70 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM PROCEDURE cargar_frm_avance THIS.o_Frm_Avance = CREATEOBJECT("frm_avance") ENDPROC + + + PROCEDURE EvaluarConfiguracion + LPARAMETERS tcDontShowProgress, tcDontShowErrors, tcNoTimestamps, tcDebug, tcRecompile, tcExtraBackupLevels + + LOCAL lcConfigFile, llExisteConfig, laConfig(1), I, lcConfData, lcExt + lcConfigFile = FORCEEXT( THIS.c_Foxbin2prg_FullPath, 'CFG' ) + llExisteConfig = FILE( lcConfigFile ) + + IF llExisteConfig + THIS.writeLog( C_CONFIGFILE_LOC + ' ' + lcConfigFile ) + + FOR I = 1 TO ALINES( laConfig, FILETOSTR( lcConfigFile ), 1+4 ) + laConfig(I) = LOWER( laConfig(I) ) + + DO CASE + CASE LEFT( laConfig(I), 10 ) == LOWER('Extension:') + lcConfData = ALLTRIM( SUBSTR( laConfig(I), 11 ) ) + lcExt = 'c_' + ALLTRIM( GETWORDNUM( lcConfData, 1, '=' ) ) + IF PEMSTATUS( THIS, lcExt, 5 ) + THIS.ADDPROPERTY( lcExt, UPPER( ALLTRIM( GETWORDNUM( lcConfData, 2, '=' ) ) ) ) + *THIS.writeLog( 'Reconfiguración de extensión:' + ' ' + lcExt + ' a ' + UPPER( ALLTRIM( GETWORDNUM( lcConfData, 2, '=' ) ) ) ) + THIS.writeLog( JUSTFNAME(lcConfigFile) + ' > ' + C_EXTENSION_RECONFIGURATION_LOC + ' ' + lcExt + ' a ' + UPPER( ALLTRIM( GETWORDNUM( lcConfData, 2, '=' ) ) ) ) + ENDIF + + CASE LEFT( laConfig(I), 17 ) == LOWER('DontShowProgress:') + tcDontShowProgress = ALLTRIM( SUBSTR( laConfig(I), 18 ) ) + THIS.writeLog( JUSTFNAME(lcConfigFile) + ' > tcDontShowProgress: ' + TRANSFORM(tcDontShowProgress) ) + + CASE LEFT( laConfig(I), 15 ) == LOWER('DontShowErrors:') + tcDontShowErrors = ALLTRIM( SUBSTR( laConfig(I), 16 ) ) + THIS.writeLog( JUSTFNAME(lcConfigFile) + ' > tcDontShowErrors: ' + TRANSFORM(tcDontShowErrors) ) + + CASE LEFT( laConfig(I), 13 ) == LOWER('NoTimestamps:') + tcNoTimestamps = ALLTRIM( SUBSTR( laConfig(I), 14 ) ) + THIS.writeLog( JUSTFNAME(lcConfigFile) + ' > tcNoTimestamps: ' + TRANSFORM(tcNoTimestamps) ) + + CASE LEFT( laConfig(I), 6 ) == LOWER('Debug:') + tcDebug = ALLTRIM( SUBSTR( laConfig(I), 7 ) ) + THIS.writeLog( JUSTFNAME(lcConfigFile) + ' > tcDebug: ' + TRANSFORM(tcDebug) ) + + CASE LEFT( laConfig(I), 18 ) == LOWER('ExtraBackupLevels:') + tcExtraBackupLevels = ALLTRIM( SUBSTR( laConfig(I), 19 ) ) + THIS.writeLog( JUSTFNAME(lcConfigFile) + ' > tcExtraBackupLevels: ' + TRANSFORM(tcExtraBackupLevels) ) + + ENDCASE + ENDFOR + ENDIF + + THIS.l_ShowProgress = NOT (TRANSFORM(tcDontShowProgress)=='1') + THIS.l_ShowErrors = NOT (TRANSFORM(tcDontShowErrors) == '1') + THIS.l_Recompile = (EMPTY(tcRecompile) OR TRANSFORM(tcRecompile) == '1' OR DIRECTORY(tcRecompile)) + THIS.l_UseTimestamps = (TRANSFORM(tcNoTimestamps) == '1') + THIS.l_Debug = (TRANSFORM(tcDebug)=='1' OR FILE(FORCEEXT(THIS.c_Foxbin2prg_FullPath,'LOG'))) + THIS.n_ExtraBackupLevels = INT(VAL(TRANSFORM(tcExtraBackupLevels))) + + THIS.writeLog( '---' ) + THIS.writeLog( '> l_ShowProgress: ' + TRANSFORM(THIS.l_ShowProgress) ) + THIS.writeLog( '> l_ShowErrors: ' + TRANSFORM(THIS.l_ShowErrors) ) + THIS.writeLog( '> l_Recompile: ' + TRANSFORM(THIS.l_Recompile) + ' (' + EVL(tcRecompile,'') + ')' ) + THIS.writeLog( '> l_UseTimestamps: ' + TRANSFORM(THIS.l_UseTimestamps) ) + THIS.writeLog( '> l_Debug: ' + TRANSFORM(THIS.l_Debug) ) + THIS.writeLog( '> n_ExtraBackupLevels: ' + TRANSFORM(THIS.n_ExtraBackupLevels) ) + ENDPROC PROCEDURE ejecutar @@ -687,27 +754,38 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM * generar errores de compilación, típicamente los #include. * NOTA: Si en vez de '1' se indica un Path (p.ej, el del proyecto, se usará como base para recompilar * tcNoTimestamps (v? IN ) Indica si se deben vacar ('1') o no ['0'] los timestamps de registro + * tcBackupLevels (v? IN ) Indica la cantidad de niveles de backup a realizar (por defecto '1') *-------------------------------------------------------------------------------------------------------------- LPARAMETERS tc_InputFile, tcType, tcTextName, tlGenText, tcDontShowErrors, tcDebug, tcDontShowProgress ; - , toModulo, toEx AS EXCEPTION, tlRelanzarError, tcOriginalFileName, tcRecompile, tcNoTimestamps + , toModulo, toEx AS EXCEPTION, tlRelanzarError, tcOriginalFileName, tcRecompile, tcNoTimestamps ; + , tcBackupLevels TRY - LOCAL I, lcPath, lnCodError, lcFileSpec, lcFile, laFiles(1,5), laConfig(1), lcConfigFile, lcExt ; - , llExisteConfig, lcConfData, lnFileCount, lcErrorInfo ; + LOCAL I, lcPath, lnCodError, lcFileSpec, lcFile, laFiles(1,5) ; + , lnFileCount, lcErrorInfo ; , loEx AS EXCEPTION ; , loFSO AS Scripting.FileSystemObject lnCodError = 0 + + THIS.writeLog( THIS.c_Foxbin2prg_FullPath + CR_LF ; + + C_TAB + 'tc_InputFile: ' + TRANSFORM(tc_InputFile) + CR_LF ; + + C_TAB + 'tcType: ' + TRANSFORM(tcType) + CR_LF; + + C_TAB + 'tcTextName: ' + TRANSFORM(tcTextName) + CR_LF ; + + C_TAB + 'tlGenText: ' + TRANSFORM(tlGenText) + CR_LF ; + + C_TAB + 'tcDontShowErrors: ' + TRANSFORM(tcDontShowErrors) + CR_LF ; + + C_TAB + 'tcDebug: ' + TRANSFORM(tcDebug) + CR_LF ; + + C_TAB + 'tcDontShowProgress: ' + TRANSFORM(tcDontShowProgress) + CR_LF ; + + C_TAB + 'toModulo: ' + TRANSFORM(toModulo) + CR_LF ; + + C_TAB + 'toEx: ' + TRANSFORM(toEx) + CR_LF ; + + C_TAB + 'tlRelanzarError: ' + TRANSFORM(tlRelanzarError) + CR_LF ; + + C_TAB + 'tcOriginalFileName: ' + TRANSFORM(tcOriginalFileName) + CR_LF ; + + C_TAB + 'tcRecompile: ' + TRANSFORM(tcRecompile) + CR_LF ; + + C_TAB + 'tcNoTimestamps: ' + TRANSFORM(tcNoTimestamps) ) + tcRecompile = EVL(tcRecompile,'1') tcNoTimestamps = EVL(tcNoTimestamps,'0') - *SET DELETED ON - *SET DATE YMD - *SET HOURS TO 24 - *SET CENTURY ON - *SET SAFETY OFF - *SET TABLEPROMPT OFF - IF _VFP.STARTMODE > 0 SET ESCAPE OFF ENDIF @@ -727,35 +805,14 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM OTHERWISE *-- Ejecución normal - THIS.l_ShowProgress = NOT (TRANSFORM(tcDontShowProgress)=='1') - THIS.l_ShowErrors = NOT (TRANSFORM(tcDontShowErrors) == '1') - THIS.l_Recompile = (EMPTY(tcRecompile) OR TRANSFORM(tcRecompile) == '1' OR DIRECTORY(tcRecompile)) - THIS.l_UseTimestamps = (EMPTY(tcNoTimestamps) OR TRANSFORM(tcNoTimestamps) == '0') - THIS.l_Debug = (TRANSFORM(tcDebug)=='1' OR FILE(FORCEEXT(THIS.c_Foxbin2prg_FullPath,'LOG'))) + + *-- ARCHIVO DE CONFIGURACIÓN + THIS.EvaluarConfiguracion( @tcDontShowProgress, @tcDontShowErrors, @tcNoTimestamps, @tcDebug, @tcRecompile, @tcBackupLevels ) IF THIS.l_ShowProgress THIS.cargar_frm_avance() ENDIF - *-- Configuración - lcConfigFile = FORCEEXT( THIS.c_Foxbin2prg_FullPath, 'CFG' ) - llExisteConfig = FILE( lcConfigFile ) - - IF llExisteConfig - FOR I = 1 TO ALINES( laConfig, FILETOSTR( lcConfigFile ), 1+4 ) - IF LOWER( LEFT( laConfig(I), 10 ) ) == 'extension:' - lcConfData = ALLTRIM( SUBSTR( laConfig(I), 11 ) ) - lcExt = 'c_' + ALLTRIM( GETWORDNUM( lcConfData, 1, '=' ) ) - IF PEMSTATUS( THIS, lcExt, 5 ) - THIS.ADDPROPERTY( lcExt, UPPER( ALLTRIM( GETWORDNUM( lcConfData, 2, '=' ) ) ) ) - *THIS.writeLog( 'Reconfiguración de extensión:' + ' ' + lcExt + ' a ' + UPPER( ALLTRIM( GETWORDNUM( lcConfData, 2, '=' ) ) ) ) - THIS.writeLog( C_EXTENSION_RECONFIGURATION_LOC + ' ' + lcExt + ' a ' + UPPER( ALLTRIM( GETWORDNUM( lcConfData, 2, '=' ) ) ) ) - ENDIF - ENDIF - ENDFOR - ENDIF - - *-- Evaluación de FileSpec de entrada DO CASE CASE '*' $ JUSTEXT( tc_InputFile ) OR '?' $ JUSTEXT( tc_InputFile ) @@ -783,11 +840,6 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM IF FILE( THIS.c_LogFile ) ERASE ( THIS.c_LogFile ) ENDIF - THIS.writeLog( THIS.c_Foxbin2prg_FullPath + ' - FileSpec: ' + EVL(tc_InputFile,'') ) - IF llExisteConfig - *THIS.writeLog( 'ConfigFile:' + ' ' + lcConfigFile ) - THIS.writeLog( C_CONFIGFILE_LOC + ' ' + lcConfigFile ) - ENDIF ENDIF lnFileCount = ADIR( laFiles, lcFileSpec, '', 1 ) @@ -850,13 +902,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM ENDCASE THIS.c_LogFile = tc_InputFile + '.LOG' - - IF THIS.l_Debug - IF FILE( THIS.c_LogFile ) - ERASE ( THIS.c_LogFile ) - ENDIF - THIS.writeLog( THIS.c_Foxbin2prg_FullPath + ' - FileSpec: ' + EVL(tc_InputFile,'') ) - ENDIF + ERASE ( THIS.c_LogFile ) lnCodError = THIS.Convertir( tc_InputFile, toModulo, toEx, .T., tcOriginalFileName ) ENDIF @@ -940,7 +986,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM .c_OriginalFileName = FORCEEXT(.c_OriginalFileName,'pjx') ENDIF - THIS.writeLog( 'c_InputFile=' + .c_InputFile ) + THIS.writeLog( '> c_OriginalFileName: ' + .c_OriginalFileName ) .o_Conversor = NULL IF NOT FILE(.c_InputFile) @@ -1122,9 +1168,9 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM *-------------------------------------------------------------------------------------------------------------- LPARAMETERS tcOutputFileName LOCAL lcNext_Bak, I - lcNext_Bak = '' + lcNext_Bak = '.BAK' - FOR I = 0 TO 9 + FOR I = 0 TO THIS.n_ExtraBackupLevels IF I = 0 IF NOT FILE( tcOutputFileName + '.BAK' ) lcNext_Bak = '.BAK' @@ -1138,8 +1184,6 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM ENDIF ENDFOR - lcNext_Bak = EVL( lcNext_Bak, '.X.BAK' ) && Para que no quede nunca vacío - RETURN lcNext_Bak ENDPROC diff --git a/foxbin2prg_en.h b/foxbin2prg_en.h index a942b68..2eff952 100644 --- a/foxbin2prg_en.h +++ b/foxbin2prg_en.h @@ -1,45 +1,46 @@ *------------------------------------------------------------------------------------------------------------------------------------------- *-- ENGLISH TRANSLATION => RENAME OR COPY TO [foxbin2prg.h] TO USE, AND RECOMPILE FOXBIN2PRG.PRG - Feel free to change or adapt the strings. +*-- NOTE: MUST USE DOUBLE QUOTES, OR SYNTAX ERRORS HAPPEN WHEN COMPILING. STRANGE :( *------------------------------------------------------------------------------------------------------------------------------------------- -#DEFINE C_ASTERISK_EXT_NOT_ALLOWED_LOC '* and ? extensions are not allowed because is dangerous (binaries can be overwriten with xx2 empty files)' -#DEFINE C_BACKLINK_CANT_UPDATE_BL_LOC 'Could not update backlink' -#DEFINE C_BACKLINK_OF_TABLE_LOC 'of table' -#DEFINE C_BACKUP_OF_LOC 'Backup of: ' -#DEFINE C_CANT_GENERATE_FILE_BECAUSE_IT_IS_READONLY_LOC 'Can't generate file [<>] because it is ReadOnly' -#DEFINE C_CONFIGFILE_LOC 'ConfigFile:' -#DEFINE C_CONVERTER_UNLOAD_LOC 'Converter unload' -#DEFINE C_CONVERTING_FILE_LOC 'Converting file' -#DEFINE C_DATA_ERROR_CANT_PARSE_UNPAIRING_DOUBLE_QUOTES_LOC 'Data Error: Cant't parse because unpairing double-quotes on line <>' -#DEFINE C_DUPLICATED_FILE_LOC 'Duplicated file' -#DEFINE C_ENDDEFINE_MARKER_NOT_FOUND_LOC 'No se ha encontrado el marcador de fin [ENDDEFINE] de la línea <> para el identificador [<>]' -#DEFINE C_END_MARKER_NOT_FOUND_LOC 'Can't found end marker [<>] that closes start marker [<>] on line <>' -#DEFINE C_FIELD_NOT_FOUND_ON_FILE_STRUCTURE_LOC 'Field [<>] not found on structure of file <>' -#DEFINE C_FILE_DOESNT_EXIST_LOC 'File doesn't exist:' -#DEFINE C_FILE_NAME_IS_NOT_SUPPORTED_LOC 'File [<<.c_InputFile>>] is not supported' -#DEFINE C_FILE_NOT_FOUND_LOC 'File not found' -#DEFINE C_EXTENSION_RECONFIGURATION_LOC 'Extension Reconfiguration:' -#DEFINE C_FOXBIN2PRG_ERROR_CAPTION_LOC 'FOXBIN2PRG: ERROR!!' -#DEFINE C_FOXBIN2PRG_INFO_SINTAX_LOC 'FOXBIN2PRG: SINTAXIS INFO' -#DEFINE C_FOXBIN2PRG_INFO_SINTAX_EXAMPLE_LOC 'FOXBIN2PRG [cType_NA cTextName_NA cGenText_NA cDontShowErrors cDebug cDontShowProgress cOriginalFileName cRecompile]' + CR_LF + CR_LF ; - + 'Example to generate TXT of all VCX of "c:\desa\clases", without showing error window and generating LOG file: ' + CR_LF ; - + ' FOXBIN2PRG "c:\desa\clases\*.vcx" "0" "0" "0" "1" "1"' + CR_LF + CR_LF ; - + 'Example to generate TXT of all VCX of "c:\desa\clases", without showing error window and without LOG file: ' + CR_LF ; - + ' FOXBIN2PRG "c:\desa\clases\*.vc2" "0" "0" "0" "1" "0"' -#DEFINE C_FOXBIN2PRG_JUST_VFP_9_LOC 'FOXBIN2PRG is only for Visual FoxPro 9.0!' -#DEFINE C_FOXBIN2PRG_WARN_CAPTION_LOC 'FOXBIN2PRG: WARNING!' -#DEFINE C_MENU_NOT_IN_VFP9_FORMAT_LOC 'Menu [<>] is NOT VFP 9 Format! - Please convert to VFP 9 with MODIFY MENU <>' -#DEFINE C_OBJECT_NAME_WITHOUT_OBJECT_OREG_LOC 'Object [<>] does not contain oReg object (level <>)' -#DEFINE C_NAMES_CAPITALIZATION_PROGRAM_FOUND_LOC '* Names capitalization program [<>] found' -#DEFINE C_NAMES_CAPITALIZATION_PROGRAM_NOT_FOUND_LOC '* Names capitalization program [<>] not found' -#DEFINE C_ONLY_SETNAME_AND_GETNAME_RECOGNIZED_LOC 'Operation not recognized. Only SETNAME and GETNAME allowed.' -#DEFINE C_OUTPUT_FILE_IS_NOT_OVERWRITEN_LOC 'Optimization: Output file [<>] is not overwriten because it is the same as the genereted.' -#DEFINE C_PROCEDURE_NOT_CLOSED_ON_LINE_LOC 'Procedure not closed. Last line of code must be ENDPROC. [<>]' -#DEFINE C_PROCESSING_LOC 'Processing file' -#DEFINE C_PROCESS_PROGRESS_LOC 'Process Progress:' -#DEFINE C_PROPERTY_NAME_NOT_RECOGNIZED_LOC 'Property [<>] is not recognized.' -#DEFINE C_REQUESTING_CAPITALIZATION_OF_FILE_LOC '- Requesting capitalization of file [<>]' -#DEFINE C_SOURCEFILE_LOC 'Source file: ' -#DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_LOC 'Nesting structure error. ENDPROC expected but found ENDDEFINE on class <> (<>), line <> of file <>' -#DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_LOC 'Nesting structure error. ENDPROC expected but found ENDDEFINE on class <> (<>.<>), line <> of file <>' -#DEFINE C_UNKNOWN_CLASS_NAME_LOC 'Unknown class [<>]' -#DEFINE C_WARN_TABLE_ALIAS_ON_INDEX_EXPRESSION_LOC 'WARNING!!' + CR_LF+ 'MAKE SURE YOU ARE NOT USING A TABLE ALIAS ON INDEX KEY EXPRESSIONS!! (ex: index on <>.campo tag keyname)' +#DEFINE C_ASTERISK_EXT_NOT_ALLOWED_LOC "* and ? extensions are not allowed because is dangerous (binaries can be overwriten with xx2 empty files)" +#DEFINE C_BACKLINK_CANT_UPDATE_BL_LOC "Could not update backlink" +#DEFINE C_BACKLINK_OF_TABLE_LOC "of table" +#DEFINE C_BACKUP_OF_LOC "Doing Backup of: " +#DEFINE C_CANT_GENERATE_FILE_BECAUSE_IT_IS_READONLY_LOC "Can not generate file [<>] because it is ReadOnly" +#DEFINE C_CONFIGFILE_LOC "Using configuration file:" +#DEFINE C_CONVERTER_UNLOAD_LOC "Converter unload" +#DEFINE C_CONVERTING_FILE_LOC "Converting file" +#DEFINE C_DATA_ERROR_CANT_PARSE_UNPAIRING_DOUBLE_QUOTES_LOC "Data Error: Cant't parse because unpairing double-quotes on line <>" +#DEFINE C_DUPLICATED_FILE_LOC "Duplicated file" +#DEFINE C_ENDDEFINE_MARKER_NOT_FOUND_LOC "No se ha encontrado el marcador de fin [ENDDEFINE] de la línea <> para el identificador [<>]" +#DEFINE C_END_MARKER_NOT_FOUND_LOC "Can not found end marker [<>] that closes start marker [<>] on line <>" +#DEFINE C_FIELD_NOT_FOUND_ON_FILE_STRUCTURE_LOC "Field [<>] not found on structure of file <>" +#DEFINE C_FILE_DOESNT_EXIST_LOC 'File does not exist:' +#DEFINE C_FILE_NAME_IS_NOT_SUPPORTED_LOC "File [<<.c_InputFile>>] is not supported" +#DEFINE C_FILE_NOT_FOUND_LOC "File not found" +#DEFINE C_EXTENSION_RECONFIGURATION_LOC "Extension Reconfiguration:" +#DEFINE C_FOXBIN2PRG_ERROR_CAPTION_LOC "FOXBIN2PRG: ERROR!!" +#DEFINE C_FOXBIN2PRG_INFO_SINTAX_LOC "FOXBIN2PRG: SYNTAX INFO" +#DEFINE C_FOXBIN2PRG_INFO_SINTAX_EXAMPLE_LOC "FOXBIN2PRG [,cType ,cTextName ,cGenText ,cNoMostrarErrores ,cDebug, cDontShowProgress, cOriginalFileName, cRecompile, cNoTimestamps]" + CR_LF + CR_LF ; + + "Example to generate TXT of all VCX of 'c:\desa\clases', without showing error window and generating LOG file: " + CR_LF ; + + " FOXBIN2PRG 'c:\desa\clases\*.vcx' '0' '0' '0' '1' '1'" + CR_LF + CR_LF ; + + "Example to generate TXT of all VCX of 'c:\desa\clases', without showing error window and without LOG file: " + CR_LF ; + + " FOXBIN2PRG 'c:\desa\clases\*.vc2' '0' '0' '0' '1' '0'" +#DEFINE C_FOXBIN2PRG_JUST_VFP_9_LOC "FOXBIN2PRG is only for Visual FoxPro 9.0!" +#DEFINE C_FOXBIN2PRG_WARN_CAPTION_LOC "FOXBIN2PRG: WARNING!" +#DEFINE C_MENU_NOT_IN_VFP9_FORMAT_LOC "Menu [<>] is NOT VFP 9 Format! - Please convert to VFP 9 with MODIFY MENU <>" +#DEFINE C_OBJECT_NAME_WITHOUT_OBJECT_OREG_LOC "Object [<>] does not contain oReg object (level <>)" +#DEFINE C_NAMES_CAPITALIZATION_PROGRAM_FOUND_LOC "* Names capitalization program [<>] found" +#DEFINE C_NAMES_CAPITALIZATION_PROGRAM_NOT_FOUND_LOC "* Names capitalization program [<>] not found" +#DEFINE C_ONLY_SETNAME_AND_GETNAME_RECOGNIZED_LOC "Operation not recognized. Only SETNAME and GETNAME allowed." +#DEFINE C_OUTPUT_FILE_IS_NOT_OVERWRITEN_LOC "Optimization: Output file [<>] is not overwriten because it is the same as the genereted." +#DEFINE C_PROCEDURE_NOT_CLOSED_ON_LINE_LOC "Procedure not closed. Last line of code must be ENDPROC. [<>]" +#DEFINE C_PROCESSING_LOC "Processing file" +#DEFINE C_PROCESS_PROGRESS_LOC "Process Progress:" +#DEFINE C_PROPERTY_NAME_NOT_RECOGNIZED_LOC "Property [<>] is not recognized." +#DEFINE C_REQUESTING_CAPITALIZATION_OF_FILE_LOC "- Requesting capitalization of file [<>]" +#DEFINE C_SOURCEFILE_LOC "Source file: " +#DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_LOC "Nesting structure error. ENDPROC expected but found ENDDEFINE on class <> (<>), line <> of file <>" +#DEFINE C_STRUCTURE_NESTING_ERROR_ENDPROC_EXPECTED_2_LOC "Nesting structure error. ENDPROC expected but found ENDDEFINE on class <> (<>.<>), line <> of file <>" +#DEFINE C_UNKNOWN_CLASS_NAME_LOC "Unknown class [<>]" +#DEFINE C_WARN_TABLE_ALIAS_ON_INDEX_EXPRESSION_LOC "WARNING!!" + CR_LF+ "MAKE SURE YOU ARE NOT USING A TABLE ALIAS ON INDEX KEY EXPRESSIONS!! (ex: index on <>.campo tag keyname)"