Fórum Migração Delphi 4 para Delphi 7 #362775

20/08/2008

0

Olá pessoal, pasmem mas é verdade, essa é a minha realidade, ainda estou usando o delphi 4 (por motivos de licença) agora a empresa q trabalho me disponibilizou o delphi7, porem estou tendo alguns problemas q consegui resolver sozinho (componentes terceiros e o FASTNET q foi descontinuado, mas esses eu ja resolvi).
Porem estou enfrentando um problema mto estranho, qdo compilo o projeto (depois de fazer os ajustes para compilar no Delphi 7), o Delphi esta dando um erro de acesso a memória, após alguns teste constatei q nessa versão (espero q eu esteja errado) o delphi esta carregando em memória até os FORM q eu crio apenas em tempo de execução no momento q irei usar (não estão no “AUTO-CREATE FORM” e mesmo assim qdo compilo passo-a-passo “F7” ele abre todos...). O projeto é bem grande.
Alguém já teve este problema??
Alguém pode me ajudar??

Grato pela atenção.


Julianomv

Julianomv

Responder

Posts

22/08/2008

Aroldo Zanela

Colega,

Despeja o DPR aqui para vermos.


Responder

Gostei + 0

25/08/2008

Julianomv

agradeço imensamente a atenção, segue abaixo o ´tripona´ do DPR, lembro ainda q este Sistema já é bem antigo, ele vem da versão 2 do delphi, foi um trabalho e tanto para passar ele para o 4 (há 5 anos atras) principamento por causo do nosso amigo ´quick report´


program Saude;

uses
Windows,
Dialogs,
Forms,
La___Me0 in ´La___Me0.pas´ ,
bib01 in ´Bib01.pas´,
AgEspCa1 in ´Agespca1.pas´ ,
LocPes in ´LocPes.pas´ ,
PSPROCA0 in ´PSPROCA0.pas´ ,
PSPROPE0 in ´PSPROPE0.pas´ ,
PSITPCA0 in ´PSITPCA0.pas´ ,
PSPORPE0 in ´PSPORPE0.pas´ ,
PSCONPE0 in ´PSCONPE0.pas´ ,
PlanoCA0 in ´PlanoCA0.pas´ ,
LocEmpCon in ´LocEmpCon.pas´ ,
UHisUsu in ´UHisUsu.pas´ ,
UUsoConv in ´UUsoConv.pas´ ,
URelUtiliz in ´URelUtiliz.pas´ ,
UDadosUsu in ´UDadosUsu.pas´ ,
U_MotDesat in ´U_MotDesat.pas´ ,
Udm in ´Udm.pas´ {DM: TDataModule},
Depends in ´Depends.pas´ ,
UsuSaude in ´UsuSaude.pas´ ,
U_Servicos in ´U_Servicos.pas´ ,
LogSis in ´Logsis.pas´ {DaMo_LogSis: TDataModule},
UVerifica in ´UVerifica.pas´ ,
UEspMed in ´UEspMed.pas´ ,
LocMedCon in ´LocMedCon.pas´ ,
UGuia in ´UGuia.pas´ ,
UBaixaGuia in ´UBaixaGuia.pas´ ,
UDataBaixa in ´UDataBaixa.pas´ ,
UBaixaLote in ´UBaixaLote.pas´ ,
U_Internacao in ´U_Internacao.pas´ ,
ULanc in ´ULanc.pas´ ,
UDesativ in ´UDesativ.pas´ ,
UConFatUsu in ´UConFatUsu.pas´ ,
UPagEmp in ´UPagEmp.pas´ ,
UDevedores in ´UDevedores.pas´ ,
URetorno in ´URetorno.pas´ ,
URTitTemp in ´URTitTemp.pas´ ,
UGlosa in ´UGlosa.pas´ ,
UTabelas in ´UTabelas.pas´ ,
UGlosaLote in ´UGlosaLote.pas´ ,
URContPro_New in ´URContPro_New.pas´ ,
URContProc in ´URContProc.pas´ ,
URContProcEmerg in ´URContProcEmerg.pas´ ,
UFRNumGuia in ´UFRNumGuia.pas´ ,
UFDevedores in ´UFDevedores.pas´ ,
UFRelTit in ´UFRelTit.pas´,
UEmpPla in ´UEmpPla.pas´ ,
URelExaQtd in ´URelExaQtd.pas´ ,
UAtiv in ´UAtiv.pas´ ,
UAtiva in ´UAtiva.pas´ ,
URelUsuEmpresa in ´URelUsuEmpresa.pas´ ,
UQRUsuEmpresa in ´UQRUsuEmpresa.pas´ ,
URelEmpConveniada in ´URelEmpConveniada.pas´ ,
UEmpresaVencimento in ´UEmpresaVencimento.pas´,
U_Principal in ´U_Principal.pas´ ,
U_CartaDes in ´U_CartaDes.pas´ ,
UEtiCar in ´UEtiCar.pas´ ,
UcompCorreio in ´UcompCorreio.pas´ ,
Urelinadim in ´Urelinadim.pas´ ,
U_ContabGuia in ´U_ContabGuia.pas´ ,
U_ConsNFMed in ´U_ConsNFMed.pas´ ,
U_ConsNotaMed in ´U_ConsNotaMed.pas´ ,
U_RelMedicos in ´U_RelMedicos.pas´ ,
U_ConSEmpr in ´U_ConSEmpr.pas´ ,
U_DebConta in ´U_DebConta.pas´ ,
U_VenFormPg in ´U_VenFormPg.pas´ ,
U_LancVend in ´U_LancVend.pas´ ,
U_comissao in ´U_comissao.pas´ ,
U_Ajuvend in ´U_Ajuvend.pas´ ,
u_relgeralcomissao in ´u_relgeralcomissao.pas´ ,
U_HistQtUsu in ´U_HistQtUsu.pas´ ,
U_RelPorCidade in ´U_RelPorCidade.pas´ ,
U_ImportaFatura in ´U_ImportaFatura.pas´ ,
u_maisde1codsau in ´u_maisde1codsau.pas´ ,
U_liberapag in ´U_liberapag.pas´ ,
U_MenuSaude in ´U_MenuSaude.pas´ ,
U_ajusta_data in ´U_ajusta_data.pas´ ,
Splash in ´Splash.pas´ ,
URelaniv in ´URelaniv.pas´ ,
UEtiquet in ´UEtiquet.pas´ ,
UgeraRel in ´UgeraRel.pas´ ,
UDados in ´UDados.pas´ ,
UEtiquetMed in ´UEtiquetMed.pas´ ,
UEtiquet_plus in ´UEtiquet_plus.pas´ ,
U_Intermedica in ´U_Intermedica.pas´ ,
U_RelErrosImpor in ´U_RelErrosImpor.pas´ ,
U_Vendedor in ´U_Vendedor.pas´ ,
U_HSBC in ´U_HSBC.pas´ ,
U_DM_Lixo in ´U_DM_Lixo.pas´ {DM_Limpa: TDataModule},
U_RejustaEmp in ´U_RejustaEmp.pas´ ,
U_RestUsu in ´U_RestUsu.pas´ ,
U_NaoUsa in ´U_NaoUsa.pas´ {DM_NaoUsa: TDataModule},
U_Mensagem in ´U_Mensagem.pas´ ,
U_Usuario in ´U_Usuario.pas´ ,
U_Liquidados in ´U_Liquidados.pas´ ,
U_Conf_Ste in ´U_Conf_Ste.pas´ ,
U_Procedimentos in ´U_Procedimentos.pas´ ,
EXTENSO in ´EXTENSO.pas´ ,
rpaQr_recibo in ´rpaQr_recibo.pas´ ,
U_ControleInternados in ´U_ControleInternados.pas´ ,
UPagDados in ´UPagDados.pas´ ,
U_Cad_usu_ind in ´U_Cad_usu_ind.pas´ ,
UDM_Cadastro in ´UDM_Cadastro.pas´ {DM_Cadastro: TDataModule},
U_Cad_usu_emp in ´U_Cad_usu_emp.pas´ ,
U_RelInterClieCir in ´U_RelInterClieCir.pas´ ,
URelPag in ´URelPag.pas´ ,
u_Lancamento in ´u_Lancamento.pas´ ,
U_GlosaAuto in ´U_GlosaAuto.pas´ ,
U_DetalhaFat in ´U_DetalhaFat.pas´ ,
U_BaixaTitulo in ´U_BaixaTitulo.pas´ ,
u_internados in ´u_internados.pas´ {QR_Internado: TQuickRep},
ucatei in ´ucatei.pas´ ,
cartei in ´cartei.pas´ ,
u_rn17 in ´u_rn17.pas´ ,
u_dm_rn17 in ´u_dm_rn17.pas´ {DM_RN17: TDataModule},
QR_CustoBenef in ´QR_CustoBenef.pas´ {QR_CustoBeneficio: TQuickRep},
U_relEmpresa in ´U_relEmpresa.pas´ ,
u_hist_empresa in ´u_hist_empresa.pas´ ,
U_rel_contab_01 in ´U_rel_contab_01.pas´ ,
QrRelConvInd in ´QrRelConvInd.pas´ ,
QrRelEmp in ´QrRelEmp.pas´ ,
U_RelTitAberto in ´U_RelTitAberto.pas´ ,
U_RelTitAberto_emp in ´U_RelTitAberto_emp.pas´ ,
UAltera in ´UAltera.pas´ ,
URelCadastral in ´URelCadastral.pas´ ,
UAlteraGuiaLote in ´UAlteraGuiaLote.pas´ ,
U_configuracao in ´U_configuracao.pas´ ,
U_DebitoAutomatico in ´U_DebitoAutomatico.pas´ ,
Unit_Pesq_Pesfis in ´Unit_Pesq_Pesfis.pas´ ,
Unit_Pesq_Bairro in ´Unit_Pesq_Bairro.pas´ ,
Unit_Pesq_Cep in ´Unit_Pesq_Cep.pas´ ,
Unit_Pesq_Municipio in ´Unit_Pesq_Municipio.pas´ ,
Unit_Pesq_Ocupacao in ´Unit_Pesq_Ocupacao.pas´ ,
Unit_Pesfis in ´Unit_Pesfis.pas´ ,
u_verificaDireito in ´u_verificaDireito.pas´ ,
u_datas in ´u_datas.pas´ ,
UQRCustoBenePeriodo in ´UQRCustoBenePeriodo.pas´ {QR_CustoBene_Periodo: TQuickRep},
u_ProcBloqueio in ´u_ProcBloqueio.pas´ ,
qr_usuar_plano in ´qr_usuar_plano.pas´ ,
u_rel_problemaCPF in ´u_rel_problemaCPF.pas´ ,
U_Altera_data in ´U_Altera_data.pas´ ,
u_rel_cartao in ´u_rel_cartao.pas´ ,
u_msg_enviadas in ´u_msg_enviadas.pas´ ,
u_qr_trocafaixa in ´u_qr_trocafaixa.pas´ ,
u_RemessaEmpresa in ´..\..\RPA\Delphi4\u_RemessaEmpresa.pas´ ,
U_controleocorrencias in ´U_controleocorrencias.pas´ ,
U_Inativados in ´U_Inativados.pas´ ,
U_Medico in ´U_Medico.pas´ ,
U_dm_med in ´U_dm_med.pas´ {DM_Med: TDataModule},
Unit_Pesq_Brasindice in ´Unit_Pesq_Brasindice.pas´ ,
QR_TabelaPrest in ´QR_TabelaPrest.pas´ ,
U_RelDesativ in ´U_RelDesativ.pas´ ,
U_Fat_outros in ´U_Fat_outros.pas´ ,
U_InformeContrib in ´U_InformeContrib.pas´ ,
uQR_ch_variavel in ´uQR_ch_variavel.pas´ {QR_CH_Variavel: TQuickRep},
U_qr_carta_cadastro in ´U_qr_carta_cadastro.pas´ {QR_Carta_Cadastro: TQuickRep},
QR_Contab_tippag in ´QR_Contab_tippag.pas´ ,
Unit_Fornecedor in ´Unit_Fornecedor.pas´ ,
Unit_Pesq_PesJur in ´Unit_Pesq_PesJur.pas´ ,
u_restqtproc in ´u_restqtproc.pas´ ,
UET_EMPRESA in ´UET_EMPRESA.pas´ ,
URelContab in ´URelContab.pas´ ,
URelContabPag in ´URelContabPag.pas´ ,
URelContSint in ´URelContSint.pas´ ,
QR_empresasAtraso in ´QR_empresasAtraso.pas´ ,
U_agendaLembrete in ´U_agendaLembrete.pas´ ,
U_PesqTitulos in ´U_PesqTitulos.pas´ ,
u_guias_lab in ´u_guias_lab.pas´ ,
U_guia_comentario in ´U_guia_comentario.pas´ ,
u_integracao in ´u_integracao.pas´ ,
u_dm_lote_informix in ´u_dm_lote_informix.pas´ {DM_Lote_Informix: TDataModule},
u_controleEntregaExame in ´u_controleEntregaExame.pas´ ,
QR_entregaExame in ´QR_entregaExame.pas´ {QRentregaExame: TQuickRep},
U_ControleAssistSocial in ´U_ControleAssistSocial.pas´ ,
QR_OcorrenciaAssist in ´QR_OcorrenciaAssist.pas´ {QROcorrenciaAssist: TQuickRep},
U_IntegracaoReceitas in ´U_IntegracaoReceitas.pas´ ,
U_Rel_caonsultas in ´U_Rel_caonsultas.pas´ ,
u_RelSobreFaturamento in ´u_RelSobreFaturamento.pas´ ,
U_Reembolso in ´U_Reembolso.pas´ ,
u_qr_reembolso in ´u_qr_reembolso.pas´ {QR_Reembolso: TQuickRep},
U_PesqAfast in ´U_PesqAfast.pas´ ,
qr_afastados in ´qr_afastados.pas´ {QR_Afast: TQuickRep},
U_ControleGlosa in ´U_ControleGlosa.pas´ ,
UQr_GlosaFicha in ´UQr_GlosaFicha.pas´ {QR_GlosaFicha: TQuickRep},
uQr_Reembolso in ´uQr_Reembolso.pas´ {Qr_Reembolso2: TQuickRep},
u_QR_CustoBeneficio in ´u_QR_CustoBeneficio.pas´ {QR_TitulosEmpresa: TQuickRep},
u_serasa in ´u_serasa.pas´ ,
UQR_Serasa in ´UQR_Serasa.pas´ ,
u_rpc in ´u_rpc.pas´ ,
U_Cons_med_II in ´U_Cons_med_II.pas´ ,
UTissPend in ´UTissPend.pas´ ,
U_HistCid10 in ´U_HistCid10.pas´ ,
U_TissComplemento in ´U_TissComplemento.pas´ ,
U_rel_cod_repasse in ´U_rel_cod_repasse.pas´ ,
Utrocausu in ´Utrocausu.pas´ ,
Agsense0 in ´Agsense0.pas´ ;

{$R *.RES}
Var HprevHist : HWND;
begin
Application.Initialize;
SplashForm := TSplashForm.Create(Application);
SplashForm.Show;
SplashForm.Update;
// apenas uma copia pode ser executada
HprevHist := FindWindow(Nil, PChar(´Saúde´));
if HprevHist = 0
then begin
Application.Title := ´Saúde´;
Application.CreateForm(TForm_Principal, Form_Principal);
Application.CreateForm(TDaMo_LogSis, DaMo_LogSis);
Application.CreateForm(TDM_Limpa, DM_Limpa);
Application.CreateForm(TDM, DM);
Application.CreateForm(TDM_Cadastro, DM_Cadastro);
Application.CreateForm(TForm_troca, Form_troca);
Application.CreateForm(TForm_senha, Form_senha);
Application.CreateForm(TForm_MSG, Form_MSG);
SplashForm.Hide;
SplashForm.Free;
Application.Run;
end
else MessageDlg(´Você não pode executar outra cópia do aplicativo´, mtInformation, [mbOK], 0);

end.


Responder

Gostei + 0

25/08/2008

Aroldo Zanela

Colega,

Você pode observar em seu .DPR que não há carga para a memória dos formulários, salve esses aqui:
Application.CreateForm(TForm_Principal, Form_Principal);
Application.CreateForm(TDaMo_LogSis, DaMo_LogSis);
Application.CreateForm(TDM_Limpa, DM_Limpa);
Application.CreateForm(TDM, DM);
Application.CreateForm(TDM_Cadastro, DM_Cadastro);
Application.CreateForm(TForm_troca, Form_troca);
Application.CreateForm(TForm_senha, Form_senha);
Application.CreateForm(TForm_MSG, Form_MSG); 


Você já apagou os DCUs antigos?

A propósito, cuidado para não perder esse fonte:

u_RemessaEmpresa in ´..\..\RPA\Delphi4\u_RemessaEmpresa.pas´ , 


Pois esta fora da pasta de seu projeto.

Espero que alguém possa sugerir outras possibilidades, pois não me lembro mais de outras possibilidades.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar