Compactando Access 97 no Delphi 5.0
Olá pessoal,
Copiei e alterei um código q peguei aqui no Clube Delphi para:
[b:83d274aff6][color=red:83d274aff6]
procedure TFrmCompactar.BtnCompactarClick(Sender: TObject);
var
dao: OLEVariant;
begin
try
Panel1.Caption:=´Compactando Tabela ´;
Panel1.Repaint;
dao := CreateOleObject(´DAO.DBEngine.36´);
dao.CompactDatabase(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´, extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados_2.mdb´,´´,0,´;pwd=1203583´);
Panel1.Caption:=´Apagando Arquivo Temporário ´;
Panel1.Repaint;
if FileExists(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´) then DeleteFile(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados_2.mdb´);
Panel1.Caption:=´Renomeando Arquivo ´;
Panel1.Repaint;
if FileExists(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´) then
RenameFile(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´,extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados_2.mdb´);
Panel1.Caption:=´Arquivo Banco.mdb Compactado ´;
Panel1.Repaint;
except
panel1.caption:=´Ocorreu um Erro durante a compactação ´;
end;
DMDados.CONEXAO.Connected:=true;[/color:83d274aff6][/b:83d274aff6]
end;
Acrescentei na Uses: [b:83d274aff6][color=red:83d274aff6]comobj, db, dbtables[/color:83d274aff6][/b:83d274aff6] como foi informado.
Mas não está compactando.
O meu BD está no diretório: [b:83d274aff6][color=blue:83d274aff6]C:\Arquivos\Dados\Dados.mdb[/color:83d274aff6][/b:83d274aff6]
O q pode estar errado? Por favor, alguém me ajude! Utilizo Access 97 com Delphi 5.0.
O erro q está ocorrendo é este: [b:83d274aff6][color=blue:83d274aff6]Project Arquivos.exe raised exception class EOleSysError with message ´Seqüência de classe inválida´. Mas nenhuma linha é selecionada.[/color:83d274aff6][/b:83d274aff6]
Grato,
Ilano.
Copiei e alterei um código q peguei aqui no Clube Delphi para:
[b:83d274aff6][color=red:83d274aff6]
procedure TFrmCompactar.BtnCompactarClick(Sender: TObject);
var
dao: OLEVariant;
begin
try
Panel1.Caption:=´Compactando Tabela ´;
Panel1.Repaint;
dao := CreateOleObject(´DAO.DBEngine.36´);
dao.CompactDatabase(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´, extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados_2.mdb´,´´,0,´;pwd=1203583´);
Panel1.Caption:=´Apagando Arquivo Temporário ´;
Panel1.Repaint;
if FileExists(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´) then DeleteFile(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados_2.mdb´);
Panel1.Caption:=´Renomeando Arquivo ´;
Panel1.Repaint;
if FileExists(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´) then
RenameFile(extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados.mdb´,extractfiledir(Application.ExeName)+´\Arquivos\Dados\Dados_2.mdb´);
Panel1.Caption:=´Arquivo Banco.mdb Compactado ´;
Panel1.Repaint;
except
panel1.caption:=´Ocorreu um Erro durante a compactação ´;
end;
DMDados.CONEXAO.Connected:=true;[/color:83d274aff6][/b:83d274aff6]
end;
Acrescentei na Uses: [b:83d274aff6][color=red:83d274aff6]comobj, db, dbtables[/color:83d274aff6][/b:83d274aff6] como foi informado.
Mas não está compactando.
O meu BD está no diretório: [b:83d274aff6][color=blue:83d274aff6]C:\Arquivos\Dados\Dados.mdb[/color:83d274aff6][/b:83d274aff6]
O q pode estar errado? Por favor, alguém me ajude! Utilizo Access 97 com Delphi 5.0.
O erro q está ocorrendo é este: [b:83d274aff6][color=blue:83d274aff6]Project Arquivos.exe raised exception class EOleSysError with message ´Seqüência de classe inválida´. Mas nenhuma linha é selecionada.[/color:83d274aff6][/b:83d274aff6]
Grato,
Ilano.
Ilanocf
Curtidas 0
Respostas
Ilanocf
06/01/2004
:shock:
:roll:
:?
:(
:cry:
:roll:
:?
:(
:cry:
GOSTEI 0
Ilanocf
06/01/2004
:shock: :?: :?: :?:
GOSTEI 0
Ilanocf
06/01/2004
Preciso de ajuda!!!!!!!!!!!!!!!!!!
Por favor, alguém!!!!!!!!!!!!!!!!!!
Por favor, alguém!!!!!!!!!!!!!!!!!!
GOSTEI 0