Aplicação não abrir duas vezes
Colegas,
Preciso fazer com que minha aplicação não abra duas vezes, caso o usuário por engano tente abri novamente...
Gostaria que o form principal maximizasse mediante a tentativa de abrir novamente...
Aguardo
Um abraço
Irenildo Carvalho
Irenildo Carvalho
Curtidas 0
Respostas
Wesley Yamazack
28/03/2010
Olá amigo, implemente o código abaixo no DPR de sua aplicação. para isso vá ao menu Projetct / View Source .
Provavelmente ele estará mais ou menos da sgeuinte forma.
program xptp;
uses
Forms,
Unit1 in 'Unit1.pas' ;
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Altere o mesmo para que fique
program xptp;
uses
Forms,
Unit1 in 'Unit1.pas', Windows, Dialogs ;
{$R *.res}
var
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TForm1', 'Form1');
if Hwnd = 0 then
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instãncia deste programa, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
Faça as alterações e veja o resultado.
Um abraço
Wesley Y
Provavelmente ele estará mais ou menos da sgeuinte forma.
program xptp;
uses
Forms,
Unit1 in 'Unit1.pas' ;
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Altere o mesmo para que fique
program xptp;
uses
Forms,
Unit1 in 'Unit1.pas', Windows, Dialogs ;
{$R *.res}
var
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TForm1', 'Form1');
if Hwnd = 0 then
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instãncia deste programa, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
Faça as alterações e veja o resultado.
Um abraço
Wesley Y
GOSTEI 0
Wesley Yamazack
28/03/2010
Olá amigo, consegui implementar o exemplo que lhe passei ? Existe mais alguma dúvida ? Estamos aguardando para fecharmos o chamado.
Um abraço
Wesley
Um abraço
Wesley
GOSTEI 0
Irenildo Carvalho
28/03/2010
Ei,
Desculpa a demora, precisei me ausentar...
Olha só implementei como vc me passou, mas deum erro, segue abaixo
[Error] SysErp.dpr(150): Incompatible types: 'Class reference' and 'PAnsiChar'
aguardo
um abraço
Irenildo
GOSTEI 0
Irenildo Carvalho
28/03/2010
Ei,
Desculpa, eu tinha feito errado... Mas agora ta como vc me passou, mas continua abrindo várias instâncias...
V meu código como ficou:
var
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TfrmMenu', 'frmMenu');
if Hwnd = 0 then
begin
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instância deste programa aberta, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TfrmMenu', 'frmMenu');
if Hwnd = 0 then
begin
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instância deste programa aberta, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
GOSTEI 0
Wesley Yamazack
28/03/2010
Olá amigo,
Fiz um exemplo com os mesmos nomes de forms que você e funcionou, faça uma exemplo de teste e me mande, pois aqui esta funcionando.
Veja o codigo abaixo :
program Project1;
uses
Forms,
Windows,
Dialogs,
Unit1 in 'Unit1.pas' ,
Unit2 in 'Unit2.pas' {dmAdo: TDataModule};
{$R *.res}
var
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TfrmMenu', 'frmMenu');
if Hwnd = 0 then
begin
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instância deste programa aberta, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
Um abraço
Wesley Y
Fiz um exemplo com os mesmos nomes de forms que você e funcionou, faça uma exemplo de teste e me mande, pois aqui esta funcionando.
Veja o codigo abaixo :
program Project1;
uses
Forms,
Windows,
Dialogs,
Unit1 in 'Unit1.pas' ,
Unit2 in 'Unit2.pas' {dmAdo: TDataModule};
{$R *.res}
var
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TfrmMenu', 'frmMenu');
if Hwnd = 0 then
begin
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instância deste programa aberta, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
Um abraço
Wesley Y
GOSTEI 0
Irenildo Carvalho
28/03/2010
Olha,
Continua abrindo várias instâncias... V aí mano... Valeu...
program SysErp;
uses
Forms,
Windows,
Dialogs,
XPMan,
Funcao in 'Funcao.pas',
Padrao in 'Padrao.pas' ,
dadADO in 'dadADO.pas' {dmAdo: TDataModule},
RelPadrao in 'RelPadrao.pas' ,
CadPadrao in 'CadPadrao.pas' ,
FilRelPadrao in 'FilRelPadrao.pas' ,
CadPadraoDetalhe in 'CadPadraoDetalhe.pas' ,
Menu in 'Menu.pas',
CadGrupo in 'CadGrupo.pas' ,
CadGrupoDetalhe in 'CadGrupoDetalhe.pas' ,
CadEstado in 'CadEstado.pas' ,
CadEstadoDetalhe in 'CadEstadoDetalhe.pas' ,
Endereco in 'Endereco.pas' {fraEndereco: TFrame},
CadRepresentante in 'CadRepresentante.pas' ,
CadRepresentanteDetalhe in 'CadRepresentanteDetalhe.pas' ,
CadCliente in 'CadCliente.pas' ,
CadClienteDetalhe in 'CadClienteDetalhe.pas' ,
CadProduto in 'CadProduto.pas' ,
CadProdutoDetalhe in 'CadProdutoDetalhe.pas' ,
FilRelComissaoVendedor in 'FilRelComissaoVendedor.pas' ,
RelComissaoVenda in 'RelComissaoVenda.pas' ,
FilRelVenda in 'FilRelVenda.pas' ,
RelVendaPeriodo in 'RelVendaPeriodo.pas' ,
CadEmpresa in 'CadEmpresa.pas' ,
CadCodigoFiscal in 'CadCodigoFiscal.pas' ,
CadCodigoFiscalDetalhe in 'CadCodigoFiscalDetalhe.pas' ,
Sobre in 'Sobre.pas' ,
Permissao in 'Permissao.pas' ,
CadOrdemServico in 'CadOrdemServico.pas' ,
CadOrdemServicoDetalhe in 'CadOrdemServicoDetalhe.pas' ,
FilRelListaPreco in 'FilRelListaPreco.pas' ,
RelListaPreco in 'RelListaPreco.pas' ,
Extenso in 'Extenso.pas',
RelOrdemServico in 'RelOrdemServico.pas' ,
login in 'login.pas' ,
CadUsuarioDetalhe in 'CadUsuarioDetalhe.pas' ,
CadUsuario in 'CadUsuario.pas' ,
CadParametro in 'CadParametro.pas' ,
ReajustePreco in 'ReajustePreco.pas' ,
CadFornecedor in 'CadFornecedor.pas' ,
CadFornecedorDetalhe in 'CadFornecedorDetalhe.pas' ,
CadNotaFiscalFornec in 'CadNotaFiscalFornec.pas' ,
CadNotaFiscalFornecDetalhe in 'CadNotaFiscalFornecDetalhe.pas' ,
CadTipoTitulo in 'CadTipoTitulo.pas' ,
CadTipoTituloDetalhe in 'CadTipoTituloDetalhe.pas' ,
CadFormaPagamento in 'CadFormaPagamento.pas' ,
CadFormaPagamentoDetalhe in 'CadFormaPagamentoDetalhe.pas' ,
FilCadPadrao in 'FilCadPadrao.pas' ,
CadTituloPagar in 'CadTituloPagar.pas' ,
CadTituloPagarDetalhe in 'CadTituloPagarDetalhe.pas' ,
FilCadTituloPagar in 'FilCadTituloPagar.pas' ,
CadTituloReceber in 'CadTituloReceber.pas' ,
FilCadTituloReceber in 'FilCadTituloReceber.pas' ,
CadTituloReceberDetalhe in 'CadTituloReceberDetalhe.pas' ,
CadAcertoEstoqueProduto in 'CadAcertoEstoqueProduto.pas' ,
CadAcertoEstoqueProdutoDetalhe in 'CadAcertoEstoqueProdutoDetalhe.pas' ,
InscE32 in 'InscE32.pas',
FilRelInventarioEstoqueProdutos in 'FilRelInventarioEstoqueProdutos.pas' ,
RelInventarioEstoqueProduto in 'RelInventarioEstoqueProduto.pas' ,
FilRelMovimentacaoProduto in 'FilRelMovimentacaoProduto.pas' ,
RelMovimentacaoProduto in 'RelMovimentacaoProduto.pas' ,
FilRelFluxoCaixa in 'FilRelFluxoCaixa.pas' ,
RelFluxoCaixa in 'RelFluxoCaixa.pas' ,
RelTituloReceber in 'RelTituloReceber.pas' ,
RelTituloPagar in 'RelTituloPagar.pas' ,
CadBoletoBancario in 'CadBoletoBancario.pas' ,
CadBoletoBancarioDetalhe in 'CadBoletoBancarioDetalhe.pas' ,
CadPedidoProdutoDetalhe in 'CadPedidoProdutoDetalhe.pas' ,
CadPedidoProduto in 'CadPedidoProduto.pas' ,
CadCompraProdutoDetalhe in 'CadCompraProdutoDetalhe.pas' ,
CadCompraProduto in 'CadCompraProduto.pas' ,
CadRamoAtividade in 'CadRamoAtividade.pas' ,
CadRamoAtividadeDetalhe in 'CadRamoAtividadeDetalhe.pas' ,
CadFormaPagamentoCaixa in 'CadFormaPagamentoCaixa.pas' ,
CadFormaPagamentoCaixaDetalhe in 'CadFormaPagamentoCaixaDetalhe.pas' ,
CadTerminal in 'CadTerminal.pas' ,
CadTerminalDetalhe in 'CadTerminalDetalhe.pas' ,
ConfereCaixa in 'ConfereCaixa.pas',
ConsultaPadrao in 'ConsultaPadrao.pas' ,
ImpPadrao in 'ImpPadrao.pas' ,
ConsultaTransacaoParcela in 'ConsultaTransacaoParcela.pas' ,
ConsultaTransacao in 'ConsultaTransacao.pas' ,
ConsultaTransacaoItem in 'ConsultaTransacaoItem.pas' ,
CadCheque in 'CadCheque.pas' ,
CadChequeDetalhe in 'CadChequeDetalhe.pas' ,
RelProduto in 'RelProduto.pas' ,
CadNotaFiscalDetalhe in 'CadNotaFiscalDetalhe.pas' ,
CadNotaFiscal in 'CadNotaFiscal.pas' ,
CadVenda in 'CadVenda.pas' ,
CadVendaDetalhe in 'CadVendaDetalhe.pas' ,
FilCadNotaFiscal in 'FilCadNotaFiscal.pas' ,
FilCadVenda in 'FilCadVenda.pas' ,
FilReltipovenda in 'FilReltipovenda.pas' ,
RelTipovenda in 'RelTipovenda.pas' ,
FilRelExtratoComissao in 'FilRelExtratoComissao.pas' ,
CadClienteHistorico in 'CadClienteHistorico.pas' ,
CadFabricante in 'CadFabricante.pas' ,
CadFabricanteDetalhe in 'CadFabricanteDetalhe.pas' ,
CadProdutoHistorico in 'CadProdutoHistorico.pas' ,
CadFornecedorHistorico in 'CadFornecedorHistorico.pas' ,
CadFabricanteHistorico in 'CadFabricanteHistorico.pas' ,
RelVenda in 'RelVenda.pas' ,
CadGrupoContaFinanceira in 'CadGrupoContaFinanceira.pas' ,
CadGrupoContaFinanceiraDetalhe in 'CadGrupoContaFinanceiraDetalhe.pas' ,
CadContaFinanceira in 'CadContaFinanceira.pas' ,
CadContaFinanceiraDetalhe in 'CadContaFinanceiraDetalhe.pas' ,
MovimentacaoFinanceira in 'MovimentacaoFinanceira.pas' ,
CadMovimentacaoFinanceiraDetalhe in 'CadMovimentacaoFinanceiraDetalhe.pas' ,
RelExtrato in 'RelExtrato.pas' ,
FilRelDre in 'FilRelDre.pas' ,
RelDre in 'RelDre.pas' ,
FilRelResumoReceitaDespesa in 'FilRelResumoReceitaDespesa.pas' ,
RelResumoReceitaDespesa in 'RelResumoReceitaDespesa.pas' ,
CadPedido in 'CadPedido.pas' ,
CadPedidoDetalhe in 'CadPedidoDetalhe.pas' ,
RelPedido in 'RelPedido.pas' ,
FilRelResumoMovimento in 'FilRelResumoMovimento.pas' ,
RelResumoMovimento in 'RelResumoMovimento.pas' ,
FilRelCustoApuradoCaixa in 'FilRelCustoApuradoCaixa.pas' ,
RelCustoApuradoCaixa in 'RelCustoApuradoCaixa.pas' ,
CadKitProduto in 'CadKitProduto.pas' ,
CadKitProdutoDetalhe in 'CadKitProdutoDetalhe.pas' ,
ResultadoOs in 'ResultadoOs.pas' ,
ConsultaCaixaOs in 'ConsultaCaixaOs.pas' ,
FilrelDescricao in 'FilrelDescricao.pas' ,
RelResultado in 'RelResultado.pas' ,
RelResultadoOs in 'RelResultadoOs.pas' ,
RelTituloReceber2 in 'RelTituloReceber2.pas' ,
RelDescricao in 'RelDescricao.pas' ,
RelExtratoComissao in 'RelExtratoComissao.pas' ,
CadServico in 'CadServico.pas' ,
CadServicoDetalhe in 'CadServicoDetalhe.pas' ,
RelPedidoCompra in 'RelPedidoCompra.pas' ,
RelVendaServico in 'RelVendaServico.pas' ,
Cadveiculo in 'Cadveiculo.pas' ,
CadVeiculoDetalhe in 'CadVeiculoDetalhe.pas' ,
uAguarde in 'uAguarde.pas' ; {$R *.res} var
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TfrmMenu', 'frmMenu');
if Hwnd = 0 then
begin
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instância deste programa aberta, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
Forms,
Windows,
Dialogs,
XPMan,
Funcao in 'Funcao.pas',
Padrao in 'Padrao.pas' ,
dadADO in 'dadADO.pas' {dmAdo: TDataModule},
RelPadrao in 'RelPadrao.pas' ,
CadPadrao in 'CadPadrao.pas' ,
FilRelPadrao in 'FilRelPadrao.pas' ,
CadPadraoDetalhe in 'CadPadraoDetalhe.pas' ,
Menu in 'Menu.pas',
CadGrupo in 'CadGrupo.pas' ,
CadGrupoDetalhe in 'CadGrupoDetalhe.pas' ,
CadEstado in 'CadEstado.pas' ,
CadEstadoDetalhe in 'CadEstadoDetalhe.pas' ,
Endereco in 'Endereco.pas' {fraEndereco: TFrame},
CadRepresentante in 'CadRepresentante.pas' ,
CadRepresentanteDetalhe in 'CadRepresentanteDetalhe.pas' ,
CadCliente in 'CadCliente.pas' ,
CadClienteDetalhe in 'CadClienteDetalhe.pas' ,
CadProduto in 'CadProduto.pas' ,
CadProdutoDetalhe in 'CadProdutoDetalhe.pas' ,
FilRelComissaoVendedor in 'FilRelComissaoVendedor.pas' ,
RelComissaoVenda in 'RelComissaoVenda.pas' ,
FilRelVenda in 'FilRelVenda.pas' ,
RelVendaPeriodo in 'RelVendaPeriodo.pas' ,
CadEmpresa in 'CadEmpresa.pas' ,
CadCodigoFiscal in 'CadCodigoFiscal.pas' ,
CadCodigoFiscalDetalhe in 'CadCodigoFiscalDetalhe.pas' ,
Sobre in 'Sobre.pas' ,
Permissao in 'Permissao.pas' ,
CadOrdemServico in 'CadOrdemServico.pas' ,
CadOrdemServicoDetalhe in 'CadOrdemServicoDetalhe.pas' ,
FilRelListaPreco in 'FilRelListaPreco.pas' ,
RelListaPreco in 'RelListaPreco.pas' ,
Extenso in 'Extenso.pas',
RelOrdemServico in 'RelOrdemServico.pas' ,
login in 'login.pas' ,
CadUsuarioDetalhe in 'CadUsuarioDetalhe.pas' ,
CadUsuario in 'CadUsuario.pas' ,
CadParametro in 'CadParametro.pas' ,
ReajustePreco in 'ReajustePreco.pas' ,
CadFornecedor in 'CadFornecedor.pas' ,
CadFornecedorDetalhe in 'CadFornecedorDetalhe.pas' ,
CadNotaFiscalFornec in 'CadNotaFiscalFornec.pas' ,
CadNotaFiscalFornecDetalhe in 'CadNotaFiscalFornecDetalhe.pas' ,
CadTipoTitulo in 'CadTipoTitulo.pas' ,
CadTipoTituloDetalhe in 'CadTipoTituloDetalhe.pas' ,
CadFormaPagamento in 'CadFormaPagamento.pas' ,
CadFormaPagamentoDetalhe in 'CadFormaPagamentoDetalhe.pas' ,
FilCadPadrao in 'FilCadPadrao.pas' ,
CadTituloPagar in 'CadTituloPagar.pas' ,
CadTituloPagarDetalhe in 'CadTituloPagarDetalhe.pas' ,
FilCadTituloPagar in 'FilCadTituloPagar.pas' ,
CadTituloReceber in 'CadTituloReceber.pas' ,
FilCadTituloReceber in 'FilCadTituloReceber.pas' ,
CadTituloReceberDetalhe in 'CadTituloReceberDetalhe.pas' ,
CadAcertoEstoqueProduto in 'CadAcertoEstoqueProduto.pas' ,
CadAcertoEstoqueProdutoDetalhe in 'CadAcertoEstoqueProdutoDetalhe.pas' ,
InscE32 in 'InscE32.pas',
FilRelInventarioEstoqueProdutos in 'FilRelInventarioEstoqueProdutos.pas' ,
RelInventarioEstoqueProduto in 'RelInventarioEstoqueProduto.pas' ,
FilRelMovimentacaoProduto in 'FilRelMovimentacaoProduto.pas' ,
RelMovimentacaoProduto in 'RelMovimentacaoProduto.pas' ,
FilRelFluxoCaixa in 'FilRelFluxoCaixa.pas' ,
RelFluxoCaixa in 'RelFluxoCaixa.pas' ,
RelTituloReceber in 'RelTituloReceber.pas' ,
RelTituloPagar in 'RelTituloPagar.pas' ,
CadBoletoBancario in 'CadBoletoBancario.pas' ,
CadBoletoBancarioDetalhe in 'CadBoletoBancarioDetalhe.pas' ,
CadPedidoProdutoDetalhe in 'CadPedidoProdutoDetalhe.pas' ,
CadPedidoProduto in 'CadPedidoProduto.pas' ,
CadCompraProdutoDetalhe in 'CadCompraProdutoDetalhe.pas' ,
CadCompraProduto in 'CadCompraProduto.pas' ,
CadRamoAtividade in 'CadRamoAtividade.pas' ,
CadRamoAtividadeDetalhe in 'CadRamoAtividadeDetalhe.pas' ,
CadFormaPagamentoCaixa in 'CadFormaPagamentoCaixa.pas' ,
CadFormaPagamentoCaixaDetalhe in 'CadFormaPagamentoCaixaDetalhe.pas' ,
CadTerminal in 'CadTerminal.pas' ,
CadTerminalDetalhe in 'CadTerminalDetalhe.pas' ,
ConfereCaixa in 'ConfereCaixa.pas',
ConsultaPadrao in 'ConsultaPadrao.pas' ,
ImpPadrao in 'ImpPadrao.pas' ,
ConsultaTransacaoParcela in 'ConsultaTransacaoParcela.pas' ,
ConsultaTransacao in 'ConsultaTransacao.pas' ,
ConsultaTransacaoItem in 'ConsultaTransacaoItem.pas' ,
CadCheque in 'CadCheque.pas' ,
CadChequeDetalhe in 'CadChequeDetalhe.pas' ,
RelProduto in 'RelProduto.pas' ,
CadNotaFiscalDetalhe in 'CadNotaFiscalDetalhe.pas' ,
CadNotaFiscal in 'CadNotaFiscal.pas' ,
CadVenda in 'CadVenda.pas' ,
CadVendaDetalhe in 'CadVendaDetalhe.pas' ,
FilCadNotaFiscal in 'FilCadNotaFiscal.pas' ,
FilCadVenda in 'FilCadVenda.pas' ,
FilReltipovenda in 'FilReltipovenda.pas' ,
RelTipovenda in 'RelTipovenda.pas' ,
FilRelExtratoComissao in 'FilRelExtratoComissao.pas' ,
CadClienteHistorico in 'CadClienteHistorico.pas' ,
CadFabricante in 'CadFabricante.pas' ,
CadFabricanteDetalhe in 'CadFabricanteDetalhe.pas' ,
CadProdutoHistorico in 'CadProdutoHistorico.pas' ,
CadFornecedorHistorico in 'CadFornecedorHistorico.pas' ,
CadFabricanteHistorico in 'CadFabricanteHistorico.pas' ,
RelVenda in 'RelVenda.pas' ,
CadGrupoContaFinanceira in 'CadGrupoContaFinanceira.pas' ,
CadGrupoContaFinanceiraDetalhe in 'CadGrupoContaFinanceiraDetalhe.pas' ,
CadContaFinanceira in 'CadContaFinanceira.pas' ,
CadContaFinanceiraDetalhe in 'CadContaFinanceiraDetalhe.pas' ,
MovimentacaoFinanceira in 'MovimentacaoFinanceira.pas' ,
CadMovimentacaoFinanceiraDetalhe in 'CadMovimentacaoFinanceiraDetalhe.pas' ,
RelExtrato in 'RelExtrato.pas' ,
FilRelDre in 'FilRelDre.pas' ,
RelDre in 'RelDre.pas' ,
FilRelResumoReceitaDespesa in 'FilRelResumoReceitaDespesa.pas' ,
RelResumoReceitaDespesa in 'RelResumoReceitaDespesa.pas' ,
CadPedido in 'CadPedido.pas' ,
CadPedidoDetalhe in 'CadPedidoDetalhe.pas' ,
RelPedido in 'RelPedido.pas' ,
FilRelResumoMovimento in 'FilRelResumoMovimento.pas' ,
RelResumoMovimento in 'RelResumoMovimento.pas' ,
FilRelCustoApuradoCaixa in 'FilRelCustoApuradoCaixa.pas' ,
RelCustoApuradoCaixa in 'RelCustoApuradoCaixa.pas' ,
CadKitProduto in 'CadKitProduto.pas' ,
CadKitProdutoDetalhe in 'CadKitProdutoDetalhe.pas' ,
ResultadoOs in 'ResultadoOs.pas' ,
ConsultaCaixaOs in 'ConsultaCaixaOs.pas' ,
FilrelDescricao in 'FilrelDescricao.pas' ,
RelResultado in 'RelResultado.pas' ,
RelResultadoOs in 'RelResultadoOs.pas' ,
RelTituloReceber2 in 'RelTituloReceber2.pas' ,
RelDescricao in 'RelDescricao.pas' ,
RelExtratoComissao in 'RelExtratoComissao.pas' ,
CadServico in 'CadServico.pas' ,
CadServicoDetalhe in 'CadServicoDetalhe.pas' ,
RelPedidoCompra in 'RelPedidoCompra.pas' ,
RelVendaServico in 'RelVendaServico.pas' ,
Cadveiculo in 'Cadveiculo.pas' ,
CadVeiculoDetalhe in 'CadVeiculoDetalhe.pas' ,
uAguarde in 'uAguarde.pas' ; {$R *.res} var
Hwnd: Thandle;
begin
Hwnd := FindWindow ('TfrmMenu', 'frmMenu');
if Hwnd = 0 then
begin
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end
else
begin
MessageDlg ('Já existe uma instância deste programa aberta, verifique por favor!!',mtinformation,[mbok], 0);
SetForegroundWindow (Hwnd);
end;
end.
GOSTEI 0
Wesley Yamazack
28/03/2010
Olá amigo,
Faça um exemplo, somente com dois forms, e me mande para poder analisar, os fontes desta forma não adiantam pois esta igual ao meu.
Um abraço
Wesley Y
Faça um exemplo, somente com dois forms, e me mande para poder analisar, os fontes desta forma não adiantam pois esta igual ao meu.
Um abraço
Wesley Y
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Então mano
GOSTEI 0
Irenildo Carvalho
28/03/2010
Olha só, eu fiz outro exemplo com dois forms, funcionou, te mandei o meu código pra vc ver se tem algo errado, porque não funciona...
agradecido
Irenildo
GOSTEI 0
Wesley Yamazack
28/03/2010
Olá amigo, infelizmente não consegui notar nada de diferente ou errado no seu código. Recomendo :
1 - Remover todos estes forms da tua aplicação, e ir adicionando um por um, e testando, pode ser algum form que esta dando erro.
2 - Me mande seus fontes caso consiga, para testar e analisar.
Um abraço
Wesley Y
1 - Remover todos estes forms da tua aplicação, e ir adicionando um por um, e testando, pode ser algum form que esta dando erro.
2 - Me mande seus fontes caso consiga, para testar e analisar.
Um abraço
Wesley Y
GOSTEI 0
Irenildo Carvalho
28/03/2010
Ei mano,
Fiz assim, funcionou, o que vc acha?
{$R *.res}
var
Instancia: THandle;
begin
Instancia:= CreateMutex(nil, false, 'SysErp');
if WaitForSingleObject(Instancia, 0) = wait_Timeout then
begin
Application.MessageBox('Atenção... O programa já está aberto!!!','Atenção',MB_ICONINFORMATION);
Exit;
end;
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end. aguardo valeu
var
Instancia: THandle;
begin
Instancia:= CreateMutex(nil, false, 'SysErp');
if WaitForSingleObject(Instancia, 0) = wait_Timeout then
begin
Application.MessageBox('Atenção... O programa já está aberto!!!','Atenção',MB_ICONINFORMATION);
Exit;
end;
Application.Initialize;
Application.Title := 'SysErp';
Application.CreateForm(TdmAdo, dmAdo);
Application.CreateForm(TfrmMenu, frmMenu);
Application.Run;
end. aguardo valeu
GOSTEI 0
Wesley Yamazack
28/03/2010
Olá amigo, não esta errado não, pelo contrário está certinho.
Estamos fechando o chamado.
Um abraço
Wesley Y
Estamos fechando o chamado.
Um abraço
Wesley Y
GOSTEI 0