Clipper On Line • Ver Tópico - Migrando um projeto antigo...

Migrando um projeto antigo...

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

 

Migrando um projeto antigo...

Mensagempor bencz » 25 Jul 2014 09:15

Bom dia... estou passando por algumas dificuldades em migrar um antigo-projeto, escrito em Clipper...
Fiz a conversão da DLL de resource de 16 para 32 bits..., praticamente todas as janelas abrem com sucesso, menos 2 ou 3 janelas...

Essa é uma das janelas que não abrem:

DSOBRE DIALOG 90, 14, 183, 212
STYLE WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Sobre o PROGRAMA."
FONT 8, "MS Sans Serif"
BEGIN
   CONTROL "Button", 1150, "BorBtn", 32768 | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 75, 0, 33, 27
   CONTROL "", -1, "STATIC", SS_WHITEFRAME | WS_CHILD | WS_VISIBLE, 75, 0, 33, 27
   CONTROL "", -1, "STATIC", SS_WHITEFRAME | WS_CHILD | WS_VISIBLE, 1, 28, 181, 39
   CTEXT "Cobrança", 200, 2, 29, 179, 11
   CONTROL "", -1, "BorShade", 2 | WS_CHILD | WS_VISIBLE, 1, 41, 181, 1
   CTEXT "Programa de coisa....", 201, 2, 44, 179, 11
   CTEXT "Versão X.XX.XXX - DD/MM/AAAA - HH:MM:SS", 100, 2, 57, 179, 9
   CONTROL "", -1, "STATIC", SS_GRAYFRAME | WS_CHILD | WS_VISIBLE, 1, 68, 181, 31
   RTEXT "Copyright (c) 2000 by XXXXXXXXXXXXXXXXXXXX", -1, 4, 73, 175, 8
   RTEXT "São Paulo - SP", -1, 4, 87, 175, 8
   CONTROL "", -1, "STATIC", SS_WHITEFRAME | WS_CHILD | WS_VISIBLE, 1, 100, 181, 90
   CONTROL "", -1, "STATIC", SS_BLACKFRAME | WS_CHILD | WS_VISIBLE, 3, 102, 177, 12
   RTEXT "Número de série do produto: ", -1, 4, 104, 102, 8
   LTEXT "XXXXXXXXXXX", 101, 111, 103, 68, 8
   LTEXT "C:\\Dir", 102, 6, 123, 171, 9
   LTEXT "Windows", 103, 6, 141, 171, 8
   LTEXT "@inicial", 105, 6, 159, 171, 8
   LTEXT "ESTAÇÃO", 106, 6, 179, 171, 8
   LTEXT "Instalado em:", -1, 5, 115, 174, 7
   LTEXT "Sistema operacional:", -1, 5, 133, 174, 7
   LTEXT "Usuário operador:", -1, 5, 151, 174, 9
   LTEXT "Estação de trabalho:", -1, 5, 170, 174, 8
   PUSHBUTTON "www.&bradesco.com.br", 111, 5, 194, 82, 14
   PUSHBUTTON "&OK", 112, 131, 194, 43, 14
END


E o local onde ativo a dialog é esse:

STATIC FUNCTION MainSobri()
LOCAL PULI,PLAO,WT,TABA,OIST,WORK,TABS
Local oDlgI,oFnt,oFnt9,oFntB,oFnt9B,oFnt9I,oFntGB
Local oSay1,oSB1,oSB2,oSB3,oBt
LOCAL oSay2,oSay3,oSay4,oSay5,oSay6,oSay7,oSay8
Local cDescri  := "Versão "+VERSAOPRODUTO+" - "+DTOC(DATAVERSAO)+' - '+HORAVERSAO
Local cNumSer  := AllTrim(PUBNUMSER)
Local cEstacao := NetName()

DO CASE
  CASE TIPODOSO = 0;  WT='Windows 95, 98 ou Me'
  CASE TIPODOSO = 1;  WT='Windows Nt, Xp ou 2000'
  CASE TIPODOSO = 2;  WT='Windows 3.11'
  CASE TIPODOSO = 3;  WT='Windows Desconhecido'
ENDCASE

Define Font   oFntGB  Name "Ms Sans Serif" Size 0, -16 Bold
Define Font   oFnt    Name "Ms Sans Serif" Size 0, -6
Define Font   oFnt9   Name "Ms Sans Serif" Size 0, -10
Define Font   oFnt9B  Name "Ms Sans Serif" Size 0, -13
Define Font   oFnt9I  Name "Ms Sans Serif" Size 0, -12      //UnderLine
Define Font   oFntB   Name "Ms Sans Serif" Size 0, -8 Bold 

DEFINE DIALOG oDlgI RESOURCE "DSOBRE" FONT oFnt

REDEFINE SAY oSay1 ID 200 Of oDlgI Font oFntGB
REDEFINE SAY oSay2 ID 201 Of oDlgI Font oFnt9

REDEFINE SAY oSay3 Var cDescri  ID 100 Of oDlgI Font oFnt9  Color "B+/W"
REDEFINE SAY oSay4 Var cNumSer  ID 101 Of oDlgI Font oFnt9B Color "R+/W"
REDEFINE SAY oSay5 Var DIRATUAL ID 102 Of oDlgI Font oFntB
REDEFINE SAY oSay6 Var WT       ID 103 Of oDlgI Font oFntB
REDEFINE SAY oSay7 Var OPERATOR ID 105 Of oDlgI Font oFntB
REDEFINE SAY oSay8 Var cEstacao ID 106 Of oDlgI Font oFntB

REDEFINE BUTTON oSB3 ID 111 OF oDlgI Action VaParaWeb()
oSB3:cToolTip:="Vai para home page da empresa"
oSB3:SetFont(oFnt9I)

REDEFINE BUTTON oBt  ID 112 OF oDlgI Action oDlgI:End()
oBt:SetFont(oFnt9I)

Activate dialog oDlgI CENTERED
oFntGB:End()
oFnt:End()
oFnt9:End()
oFnt9B:End()
oFnt9I:End()
oFntB:End()
RETURN NIL


O Erro:
Application
===========
Size: 2,107,392 bytes
Compiler version: xHarbour build 1.2.1 Intl. (SimpLex) (Rev. 6406)
FiveWin Version: FWHX 11.11
Windows version: 6.1, Build 7601 Service Pack 1

Time from start: 0 hours 0 mins 5 secs
Error occurred at: 25/07/2014, 09:12:19
Error description: Error FiveWin/3 Cannot create Dialog Box:
Resource: DSOBRE
Args:

Stack Calls
===========
Called from: .\source\classes\DIALOG.PRG => CREATEDLGERROR( 535 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 273 )
Called from: TESTECO.PRG => MAINSOBRI( 1108 )
Called from: TESTECO.PRG => (b)MENUPRINCIPAL( 687 )
Called from: .\source\classes\MENU.PRG => TMENU:COMMAND( 461 )
Called from: .\source\classes\WINDOW.PRG => TWINDOW:COMMAND( 1043 )
Called from: => TWINDOW:HANDLEEVENT( 0 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3169 )
Called from: => SYSREFRESH( 0 )
Called from: .\source\classes\FOLDER.PRG => SYSWAIT( 448 )
Called from: TESTECO.PRG => ATUALIZACAO( 10279 )
Called from: TESTECO.PRG => LIBERASYS( 971 )
Called from: TESTECO.PRG => VALIDAPSW( 983 )
Called from: TESTECO.PRG => (b)INITSYST( 922 )
Called from: .\source\classes\BUTTON.PRG => TBUTTON:CLICK( 157 )
Called from: .\source\classes\CONTROL.PRG => TBUTTON:HANDLEEVENT( 1653 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3169 )
Called from: => SYSREFRESH( 0 )
Called from: .\source\classes\CONTROL.PRG => TBUTTON:KEYCHAR( 801 )
Called from: => TWINDOW:HANDLEEVENT( 0 )
Called from: .\source\classes\CONTROL.PRG => TBUTTON:HANDLEEVENT( 1699 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3169 )
Called from: => WINRUN( 0 )
Called from: .\source\classes\WINDOW.PRG => TWINDOW:ACTIVATE( 990 )
Called from: TESTECO.PRG => TESTECO( 631 )


Alguem sabe o que pode ser ?
Imagem
Avatar de usuário

bencz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 517
Data de registro: 28 Abr 2012 17:36
Curtiu: 6 vezes
Mens.Curtidas: 34 vezes

Migrando um projeto antigo...

Mensagempor Kapiaba » 25 Jul 2014 10:11

Tente agora, mas não esqueça de chamar a BWCC32.DLL, ou retire os controles BORLAND dos seus dialogos.
É preferivel usar sempre controles Microsoft.

DSOBRE DIALOG 198, 82, 183, 212
STYLE DS_ABSALIGN | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Sobre o PROGRAMA."
FONT 8, "MS Sans Serif"
{
CONTROL "Button", 1150, "BorBtn", BBS_BITMAP | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 75, 0, 14, 15
CONTROL "", -1, "STATIC", SS_GRAYFRAME, 75, 0, 18, 20
CONTROL "", -1, "STATIC", SS_WHITEFRAME | WS_CHILD | WS_VISIBLE, 1, 28, 181, 39
CTEXT "Cobrança", 200, 2, 29, 179, 11
CONTROL "", -1, "BorShade", BSS_HDIP | BSS_LEFT | WS_CHILD | WS_VISIBLE, 1, 41, 181, 1
CTEXT "Programa de coisa....", 201, 2, 44, 179, 11
CTEXT "Versão X.XX.XXX - DD/MM/AAAA - HH:MM:SS", 100, 2, 57, 179, 9
CONTROL "", -1, "STATIC", SS_GRAYFRAME | WS_CHILD | WS_VISIBLE, 1, 68, 181, 31
RTEXT "Copyright (c) 2000 by XXXXXXXXXXXXXXXXXXXX", -1, 4, 73, 175, 8
RTEXT "São Paulo - SP", -1, 4, 87, 175, 8
CONTROL "", -1, "STATIC", SS_WHITEFRAME | WS_CHILD | WS_VISIBLE, 1, 100, 181, 90
CONTROL "", -1, "STATIC", SS_BLACKFRAME | WS_CHILD | WS_VISIBLE, 3, 102, 177, 12
RTEXT "Número de série do produto: ", -1, 4, 104, 102, 8
LTEXT "XXXXXXXXXXX", 101, 111, 103, 68, 8
LTEXT "C:\\Dir", 102, 6, 123, 171, 9
LTEXT "Windows", 103, 6, 141, 171, 8
LTEXT "@inicial", 105, 6, 159, 171, 8
LTEXT "ESTAÇÃO", 106, 6, 179, 171, 8
LTEXT "Instalado em:", -1, 5, 115, 174, 7
LTEXT "Sistema operacional:", -1, 5, 133, 174, 7
LTEXT "Usuário operador:", -1, 5, 151, 174, 9
LTEXT "Estação de trabalho:", -1, 5, 170, 174, 8
PUSHBUTTON "www.&bradesco.com.br", 111, 5, 194, 82, 14
PUSHBUTTON "&OK", 112, 131, 194, 43, 14
}


Veja:

CONTROL "Button", 1150, "BorBtn", BBS_BITMAP | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 75, 0, 14, 15
CONTROL "", -1, "BorShade", BSS_HDIP | BSS_LEFT | WS_CHILD | WS_VISIBLE, 1, 41, 181, 1

isto é um Borland Shade Style, para usa-lo, somente com a BWCC32.DLL inclusa ao projeto.

Abs,

Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

Migrando um projeto antigo...

Mensagempor Kapiaba » 25 Jul 2014 10:15

Exemplo:

FUNCTION Main()

   LOCAL hBorland

   hBorland := LoadLibrary('BWCC32.DLL')

   BWCCRegister( GetResources() )

... sua app

RETURN NIL

DLL32 FUNCTION BWCCRegister( hInst AS LONG ) AS WORD PASCAL LIB "BWCC32.DLL"


abs,
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

Migrando um projeto antigo...

Mensagempor bencz » 25 Jul 2014 10:18

Eu utilizo ela.. a BWCC32.dll, mesmo assim, não funciona...
Imagem
Avatar de usuário

bencz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 517
Data de registro: 28 Abr 2012 17:36
Curtiu: 6 vezes
Mens.Curtidas: 34 vezes

Migrando um projeto antigo...

Mensagempor Kapiaba » 25 Jul 2014 10:30

vou fazer um teste. wait a moment please.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

Migrando um projeto antigo...

Mensagempor bencz » 25 Jul 2014 10:49

Complicado em... tem coisas que não da para entender... tem uma janela aqui que nao tem nada de shades e etc... e nao funciona de jeito nenhum! ):
Imagem
Avatar de usuário

bencz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 517
Data de registro: 28 Abr 2012 17:36
Curtiu: 6 vezes
Mens.Curtidas: 34 vezes

Migrando um projeto antigo...

Mensagempor Kapiaba » 25 Jul 2014 10:52

Funcionou normal, se quiser testar, salve como BORLAND.PRG y BORLAND.RC e digite: BUILDX BORLAND.

Sequiser que eu envie o executavel, me chame no skype.

#include "FiveWin.ch"

static oWnd

function Main()

   local oBar
   LOCAL hBorland

   PRIVATE VERSAOPRODUTO := "1.00", DATAVERSAO := DATE(), HORAVERSAO := TIME()
   PRIVATE PUBNUMSER := "24242424242424242424"
   PRIVATE DIRATUAL := "C:\MYAPP"
   PRIVATE OPERATOR := "kapiaba"
   PRIVATE cEstacao := "Minha Rede"

   SET CENTURY ON
   SET DATE BRITISH
   SET EPOCH TO YEAR( DATE() ) - 30

   hBorland := LoadLibrary('BWCC32.DLL')

   BWCCRegister( GetResources() )

   DEFINE WINDOW oWnd TITLE "3D objects Using Borland"

   DEFINE BUTTONBAR oBar _3D OF oWnd

   DEFINE BUTTON OF oBar ACTION MainSobri()

   SET MESSAGE OF oWnd TO "3D Objects Using Borland" NOINSET CLOCK DATE KEYBOARD

   ACTIVATE WINDOW oWnd

return nil

FUNCTION MainSobri()

   LOCAL PULI,PLAO,WT,TABA,OIST,WORK,TABS
   Local oDlgI,oFnt,oFnt9,oFntB,oFnt9B,oFnt9I,oFntGB
   Local oSay1,oSB1,oSB2,oSB3,oBt
   LOCAL oSay2,oSay3,oSay4,oSay5,oSay6,oSay7,oSay8
   Local cDescri := "Versão "+VERSAOPRODUTO+" - "+DTOC(DATAVERSAO)+' - '+HORAVERSAO
   Local cNumSer := AllTrim(PUBNUMSER)
   Local cEstacao := NetName()

   /* // ???
   DO CASE
   CASE TIPODOSO = 0; WT='Windows 95, 98 ou Me'
   CASE TIPODOSO = 1; WT='Windows Nt, Xp ou 2000'
   CASE TIPODOSO = 2; WT='Windows 3.11'
   CASE TIPODOSO = 3; WT='Windows Desconhecido'
   ENDCASE
   */

   Define Font oFntGB Name "Ms Sans Serif" Size 0, -16 Bold
   Define Font oFnt   Name "Ms Sans Serif" Size 0, -6
   Define Font oFnt9  Name "Ms Sans Serif" Size 0, -10
   Define Font oFnt9B Name "Ms Sans Serif" Size 0, -13
   Define Font oFnt9I Name "Ms Sans Serif" Size 0, -12   //UnderLine
   Define Font oFntB  Name "Ms Sans Serif" Size 0, -8 Bold

   DEFINE DIALOG oDlgI RESOURCE "DSOBRE" FONT oFnt TRANSPARENT ;
          COLORS CLR_BLACK, CLR_WHITE

   REDEFINE SAY oSay1 ID 200 Of oDlgI Font oFntGB

   REDEFINE SAY oSay2 ID 201 Of oDlgI Font oFnt9

   REDEFINE SAY oSay3 Var cDescri ID 100 Of oDlgI Font oFnt9 Color "B+/W"

   REDEFINE SAY oSay4 Var cNumSer ID 101 Of oDlgI Font oFnt9B Color "R+/W"

   REDEFINE SAY oSay5 Var DIRATUAL ID 102 Of oDlgI Font oFntB

   REDEFINE SAY oSay6 Var WT   ID 103 Of oDlgI Font oFntB

   REDEFINE SAY oSay7 Var OPERATOR ID 105 Of oDlgI Font oFntB

   REDEFINE SAY oSay8 Var cEstacao ID 106 Of oDlgI Font oFntB

   REDEFINE BUTTON oSB3 ID 111 OF oDlgI //Action VaParaWeb()

   oSB3:cToolTip:="Vai para home page da empresa"

   oSB3:SetFont(oFnt9I)

   REDEFINE BUTTON oBt ID 112 OF oDlgI Action oDlgI:End()

   oBt:SetFont(oFnt9I)

   Activate dialog oDlgI CENTERED

   oFntGB:End()
   oFnt:End()
   oFnt9:End()
   oFnt9B:End()
   oFnt9I:End()
   oFntB:End()

RETURN NIL

DLL32 FUNCTION BWCCRegister( hInst AS LONG ) AS WORD PASCAL LIB "BWCC32.DLL"


Abs
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

Migrando um projeto antigo...

Mensagempor rochinha » 27 Jul 2014 00:01

Amiguinho,

Como o nobre colega postou, voce deve eliminar os controles Borland, inclusive os frames que dão fundo 3D. No lugar deles use um simples GroupBox ou se quiser deixar alguns controles dentro de uma região afundada(3D) coloque um controle text com bordas ou um edittext mesmo.

Este controles com padrão Borland são jurássicos e funcionam bem em 16bits.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4545
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 806 vezes
Mens.Curtidas: 245 vezes




Retornar para FiveWin

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 5 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro