ottonico Posted July 7, 2005 Report Share Posted July 7, 2005 Boa tarde, Uso o FWH 2.5 + xHarbour e estou encontrando um problema de performance no momento em que os Says e Gets são desenhados na tela. Com FW24 + Clipper 5.2e a tela é exibida rapidamente sem problemas, mas quando compilo o mesmo prg com o FWH e vejo cada say/get sendo desenhado na tela. Estou usando WinXP em um Celeron 1.3, 512 RAM... não deveria se comportar assim... alguém tem alguma idéia? Obrigado, Luciano Quote Link to comment Share on other sites More sharing options...
Adelson (ADS e TI) Posted July 7, 2005 Report Share Posted July 7, 2005 Amigo, vc disse que usava o clipper com fw 2.4 certo? E como fez a conversão das telas? vc usa @say ou recursos? Se for recursos o problema pode estar na famosa conversão do Resouce workshop para ".RC", isso causa uma série de bugs no xHarbour. Se for @say, poste teu codigo onde monta a tela que testo aqui e te digo o problema. Em caso de resources, recomento que vcrefaça todos recursos no Pelles puramente, sem aproveitar nadinha do 16bit, sei que é maior trampo, mas é a única forma de zerar os bugs. Abraços. ADELSON - (A&F Soft) Pelles 3.00.4, FWH 2.6, xHarbor Comercial 0.99.5, Drive RDDSQL Quote Link to comment Share on other sites More sharing options...
ottonico Posted July 8, 2005 Author Report Share Posted July 8, 2005 Adelson, segue o código. Estou falando de um programa simples... sem RC. Alias, as telas feitas em RC são mais rápidas que as criadas na mão. Quando compilo esse programa com Clipper 5.2e + FW2.4 fica um foguete, quando compilo com xHarbour + FWH 2.5... em consigo ver os SAYs/GETs serem montados na tela... me recordou os tempos do XT. []´s Luciano ///////////////////////// #include "FiveWin.ch" //----------------------------------------------------------------------------// function Main() local lClose local oGet1, oGet2, oGet3, oGet4, oGet5, cTexto1:= space(20) local oGet6, oGet7, oGet8, oGet9, oGet10, oGet11 do while .t. lClose := .f. DEFINE DIALOG oDlg FROM 1,1 to 30, 90 TITLE "Loadind..." @ 00, 2 say "1. Info:" @ 00, 10 get oGet0 VAR ctexto1 pict "@!" valid ValMyGet() @ 01, 2 say "2. Info:" @ 01, 10 get oGet1 VAR ctexto1 pict "@!" valid ValMyGet() @ 02, 2 say "3. Info:" @ 02, 10 get oGet2 VAR ctexto1 pict "@!" valid ValMyGet() @ 03, 2 say "4. Info:" @ 03, 10 get oGet3 VAR ctexto1 pict "@!" valid ValMyGet() @ 04, 2 say "5. Info:" @ 04, 10 get oGet4 VAR ctexto1 pict "@!" valid ValMyGet() @ 05, 2 say "6. Info:" @ 05, 10 get oGet5 VAR ctexto1 pict "@!" valid ValMyGet() @ 06, 2 say "7. Info:" @ 06, 10 get oGet6 VAR ctexto1 pict "@!" valid ValMyGet() @ 07, 2 say "8. Info:" @ 07, 10 get oGet8 VAR ctexto1 pict "@!" valid ValMyGet() @ 08, 2 say "9. Info:" @ 08, 10 get oGet9 VAR ctexto1 pict "@!" valid ValMyGet() @ 09, 2 say "10. Info:" @ 09, 10 get oGet10 VAR ctexto1 pict "@!" valid ValMyGet() @ 10, 2 say "11. Info:" @ 10, 10 get oGet11 VAR ctexto1 pict "@!" valid ValMyGet() @ 10, 1 BUTTON " &Next... " OF oDlg SIZE 60, 25 ACTION oDlg:End() @ 10, 15 BUTTON " &Close " OF oDlg SIZE 60, 25 ACTION (lClose:=.t.,oDlg:End()) ACTIVATE DIALOG oDlg if lClose exit endif enddo return NIL static function ValMyGet() //MsgInfo("Validando get...") return .t. Quote Link to comment Share on other sites More sharing options...
marcelo Posted July 8, 2005 Report Share Posted July 8, 2005 Ola Tire o Do While ..... exit... e tente novamente Yrece Quote Link to comment Share on other sites More sharing options...
evandro Posted July 8, 2005 Report Share Posted July 8, 2005 Olá, Testei aqui e, mesmo com o "do while" rodou normal (xHarbour+FWh 2.5). Agora o certo é realmente retirar o "do while". []s, Evandro G. de Paula Curvelo - MG evandro@skillnet.com.br (Escr. - na Cidade) imortal@skillnet.com.br (Res. - na Roça) FWH 2.5+PellesC+xBuild+xHarbour.org 0.99.3 Quote Link to comment Share on other sites More sharing options...
Kleyton Posted July 8, 2005 Report Share Posted July 8, 2005 Tente fazer o teste em outro computador, para termos certeza se tem alguma coisa a ver com o computador... Kleyton Clipper5.2E+Clipper5.3b+Blink7+FW2.0d cleitonbala@bol.com.br Quote Link to comment Share on other sites More sharing options...
ottonico Posted July 11, 2005 Author Report Share Posted July 11, 2005 Boa tarde, O Do While só se encontra neste código por motivo de teste, para que o programa feche a DIALOG e abra novamente. O meu problema não é isso. Estou com um problema sério de performance. Já compilei esse programa em 3 computadores e tenho o mesmo resultado. Se rodo esse programa no Win98 ele fica mais lento ainda... vejo cada say e get sendo apresentado na tela. O mesmo programa em Fivewin 2.4 + Clipper 5.2e fica pelo menos 10x mais rápido. Posso lhe enviar os 2 EXEs anexados para vc testar ai, pq não sei o que acontece. Já tentei as dicas do Forum de definir a função IsAppThemed() com retorno .F. e também de definir os metodos da DispBegin() e DispEnd() da classe TWindow como Virtual. De fato, a performance melhorá, mas ainda sim continua lento. Você tem alguma notÃcia sobre essas alterações? Isso, está dificultando a migração em meus clientes, pois não querem usar um programa mais lento do o anterior. Obrigado, Luciano Quote Link to comment Share on other sites More sharing options...
marcelo Posted July 11, 2005 Report Share Posted July 11, 2005 Ola Mande para teste. Yrece@protestodeosasco.com.br Yrece Quote Link to comment Share on other sites More sharing options...
gilmer Posted July 11, 2005 Report Share Posted July 11, 2005 Olá, Como você compilando e linkando ? citação: Boa tarde, O Do While só se encontra neste código por motivo de teste, para que o programa feche a DIALOG e abra novamente. O meu problema não é isso. Estou com um problema sério de performance. Já compilei esse programa em 3 computadores e tenho o mesmo resultado. Se rodo esse programa no Win98 ele fica mais lento ainda... vejo cada say e get sendo apresentado na tela. O mesmo programa em Fivewin 2.4 + Clipper 5.2e fica pelo menos 10x mais rápido. Posso lhe enviar os 2 EXEs anexados para vc testar ai, pq não sei o que acontece. Já tentei as dicas do Forum de definir a função IsAppThemed() com retorno .F. e também de definir os metodos da DispBegin() e DispEnd() da classe TWindow como Virtual. De fato, a performance melhorá, mas ainda sim continua lento. Você tem alguma notÃcia sobre essas alterações? Isso, está dificultando a migração em meus clientes, pois não querem usar um programa mais lento do o anterior. Obrigado, Luciano id=quote>id=quote> Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.