Voc ainda tem Programas antigos em DOS baseado em CA-Clipper rodando no seu sistema ? Este artigo mostrar como acelerar esses programas compilando-os com HMG. O Problema: Desde o lanamento do indo!s "P# $oc pro$a$elmente consegue se li$rar do consumo de %&&' da CP( t)o logo comea a e*ecu)o do seu e*e. +esmo ,ue a sua aplica)o este-a apenas esperando pelo a digita)o do usurio# ele manter seu computador ocupado. .)o posso e*plicar a /undo o moti$o. +as o Clipper n)o /oi pro-etado para rodar em ambiente multi-tare/a e o indo!s ainda com di/iculdade consegue emular o ambiente DOS. Ent)o o seu programa logo ,ue 0 e*ecutado# mesmo em processadores Core Duo bai*am muito o seu rendimento. Se $oc e*ecutar a mesma aplica)o em um noteboo1# suas baterias ir)o gastar-se rapidamente. A Soluo: Compile e rie um e!e para Windows +as esta op)o n)o precisa ser a 2nica solu)o. Se $oc possui os c3digos /ontes# ent)o $oc est com sorte. Voc pode compilar a maioria sem ,ual,uer mudana e tornar a sua aplica)o com a mesma aparncia# mas rodando muito mais rpido e consumindo menos ciclos da CP(. E*istem muito compiladores para Clipper l /ora. Alguns deles s)o gratuitos. O ompilador: Harbour 4arbour 0 um grandioso compilador. Ele interpreta seu c3digo em Clipper e o con$erte em c3digo C ,ue pode ser compilado em /orma binria. Voc pode escol5er seu compilador e e*istem muitas bibliotecas e com isso adicionar /un6es para seu programa ,ue nunca son5ou ter. 7r rodar at0 mesmo no 8inu* e +ac-OS. +as 4arbour tem uma /al5a principal9 0 pobre na documenta)o e todas as escol5as s)o di/:ceis de entender para os iniciantes. Se $oc souber nada de compiladores em C# ent)o $oc ter mais um passo no seu aprendi;ado. Visite o site o/icial do pro-eto 4arbour9 5ttp9<<!!!.5arbour-pro-ect.com.br< 4arbour Online 4elp9 5ttp9<<!!!.5arbour.$ouc5.in/o<inde*.5tml HMG: "m ompilador Harbour om baterias inlusas Se $oc n)o est interessado em 8inu* ou +ac-OS e ,uer apenas ,ue a sua aplica)o se-a instalado tudo ,ue precisa. (m Compilador C# binarios e ar,ui$o bat com muitos e*emplos. Cada programa criado 0 c5amado de =4arbour +ini>(7= ou apenas =HMG= abre$iado. Visite o site dos programadores9 5ttp9<<sites.google.com<site<5mg!eb< ?aa o do!nload da $ers)o @9 5ttp9<<!!!.source/orge.net<pro-ects<5mg +as pode tamb0m bai*ar a $ers)o anterior com a sua 7DE9 5ttp9<<do!nloadA@@.media/ire.com<m,B&!aaBem5g<$pC1i$o&,DBgptb<5mg.C.&.CD.e*e Voc pode tirar as suas d2$idas Eem inglsF no /3rum o/icial9 5ttp9<<5mg/orum.com muitos poder)o inclusi$e con/irmar ,ue as aplica6es rodam bem no indo!s Vista e indo!s G. #nstalando HMG$ Ap3s ter /eito o do!nload do ar,ui$o setup# $oc poder prosseguir com a instala)o. Hecomendamos ,ue se-a /eita na pasta c9IHMG%%%
#niiando a #D& A instala)o toma alguns segundos. Ap3s /inali;ado# ter tudo ,ue precisa. Compilador# 8in1ador# ar,ui$os 7nclude# etc. Voc poder compilar seus ar,ui$os prgs na lin5a de comando# mas eu pre/iro a inter/ace gr/ica# neste caso a 7DE 4+>. Voc obter no$as caracter:sticas adicionais com HMG. E*ecute a 7DE 4+> pelo :cone de atal5o da rea de trabal5o ou do menu 7niciar. Voc abrir um pro-eto com o seu - e*istente c3digo /onte na pasta do seu disco r:gido. +as /aa uma c3pia antes# por ,ual,uer coisa ,ue der errado. A 7DE criar um no$o ar,ui$o =+ain.Prg= e um no$o /orm $a;io =+ain.?mg=. 'emo(endo Main%Pr) e Main%*m) HMG 0 uma grandiosa /erramenta para criar $erdadeiras aplica6es indo!s. J impressionante a simplicidade de trans/ormar um programa Clipper em programa indo!s. +as iremos resistir as caracter:sticas bril5antes por agora e compilar em modo console a sua aplica)o. Como n)o iremos precisar dos ar,ui$os +ain.?mg e +ain.Prg ent)o iremos selecionar-los e no menu KPro-etoL selecionaremos em KE*cluir Ar,ui$oL para delet-los. Adiionando o seu +di)o ,onte na #D& Agora ,ue $oc tem um pro-eto $a;io# cli,ue em K+3dulo Pro-et Mro!serL e no menu =Pro-eto= selecione =7mportar Ar,ui$o= para importar todos os ar,ui$os prgs ,ue comp6es seu antigo pro-eto. Primeiramente $oc de$er escol5er para ser o m3dulo principal. 7sso signi/ica ,ue ir incluir as procedure ou /un)o como in:cio do programa. Voc declara como m3dulo principal clicando no menu =Pro-eto= e =De/inir como Principal E+ainF=. Modo Console O HMG assume como padr)o criar aplica6es indo!s# mas os c3digos dos seus antigos sistemas em Clipper s)o aplica6es em modo console. Ent)o $oc de$er con/igurar o compilador# clicando na aba KCon/igura)oL e item =Console +ode= mudando para .N. &dite seu C+di)o Em alguns casos# $oc ter ,ue /a;er algumas pe,uenas mudanas no seu c3digo. O mais importante# o 4arbour procurar pela /un)o ou procedure =+ain=. Se n)o encontrar# o aplicati$o e*ecutar nada# pois n)o saber por onde comear. O Clipper tamb0m possui a primeira /un)o c5amada como o primeiro ar,ui$o prg. Ent)o abra seu ar,ui$o prg com o editor da sua pre/erncia e renomeie para /unction main. O antigo ar,ui$o prg ser sal$o em codepage AD&. +eu editor /a$orito 0 -Edit e sempre abre em codepage 7M+AD&. Se alguns caracteres Etremas# acentos# lin5as-de- desen5os# etc.F aparecer)o com caracteres estran5os9 cli,ue em =?ile= - =Heload !it5 Encoding= - =7M+AD&=. O na instala)o do 7DE 4+> C.&.CD - $em com o editor PDPad ,ue 0 muito bom e - $em para ser con/igurado em Portugus. .)o mude a codi/ica)o# manten5a-o em AD& para sua aplica6es em modo console P &!eutar Compile seu c3digo clicando em =Pro-eto= e =E*ecutar= no +enu ou Q?DR HMG ir criar uma ar,ui$o .e*e e ir e*ecut-lo. Se tudo ocorrer bem# o programa ir inciar. O no$o ar,ui$o e*e de$er ser maior ,ue E% ou S +MF comparado com o e*e do Clipper. +as ,uem se importa com isso nestes dias# n)o 0 mesmo ? A,ui segue um e*emplo da tela capurada de um e*emplo de aplica)o em modo console. Como pode $er# o comando de espera E in1eTE&F ou !aitF n)o mant0m o processador ocupado. Conluso 7sto ser$e para demonstrar ,ue $oc n)o precisa -ogar /ora seu c3digo antigo do Clipper e escre$er numa no$a linguagem se $oc ,uer uma aplica)o ,ue /uncione bem no indo!s. Com HMG $oc pode tornar um moderno programa 4arbour em modo console em >(7 para !indo!s em poucos minutos. Pr+!imo passo - HMG abre muitas possibilidades para trans/ormar antigas aplica6es em aplica6es para o s0culo S%. J impressionante como Hoberto 8ope; soube ar,uitetar e lograr e*tender uma no$a /erramenta na linguagem *Mase. Nais controles >(7 podem ser /acilmente de/inidos com /cil modo de compreens)o. (m c3digo /onte# assemel5a-se a este e*emplo9 #include "minigui.ch" Function Main DEFINE WINDOW Win_1 ; AT 00 ; WIDT! "00 ; !EI#!T $00 ; TIT%E &Tuto' 10 ( )ictu'e *utton Te+t& ; MAIN , 1010 *-TTON )ictu'e*utton_1 ; )I.T-/E &0utton.0m1& ; A.TION M+gIn2o3&)ictu'e *utton .lic4ed55&6 ; WIDT! $7 ; !EI#!T $7 ; TOO%TI) &)ictu'e *utton Toolti1& END WINDOW A.TI8ATE WINDOW Win_1 /etu'n A 7DE au*ilia na constru)o do seu c3digo# podendo ser desen5ado em /ormulrio E/ormsF atra$0s do desen5ador >(7. Se ,uiser saber mais sobre HMG agora# d uma ol5ada na pasta do HMG e sub-pasta KSA+P8ESL. Namb0m e*iste um ar,ui$o de a-uda na sub-pasta DOC do HMG c5amado 5mgdoc.5tm ,ue tamb0m est dispon:$el na internet online. Programadores encontram-se no 5mg/orum.com ,ue 0 muito instruti$o e 2til. O /3rum permite abrir temas para discuss)o e podem ser$ir para tirar d2$idas. Outros lin1s importantes9 5ttp9<<!!!.5arbourminigui.com<5mgguide<data<inde*.5tm 5ttp9<<!!!.5arbourminigui.com<inde*.p5p 5ttp9<<sites.google.com<site<$i$aclipperS<5mg 5ttp9<<5mglig5ts.!ordpress.com< 5ttp9<<!!!.pctoledo.com.br</orum<$ie!/orum.p5p?/U@D 5ttp9<<!!!.-edit.org< Ne*to tradu;ido e e*tendido da mat0ria9 5ttp9<<raumiGD.-imdo.com<S&%&<&S<SG</rom-ca-clipper-to-!indo!s-in-D- minutes raumi.5 de /0nen1 Aleman2a