O arquivo Cleanup.DLL precisa ser registrado com o utilitário
c:\windows\system32\regsvr32.exe.
Sds.

-----Mensagem original-----
De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de EmbarcaDelphi
Enviada em: sexta-feira, 26 de junho de 2009 15:56
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Como chamar esta DLL pelo Delphi? [erro]

Olá pessoal

Novamente com o mesmo tema, só que dessa vez já com o componente instalado.
O nome do componente criado: CleanupAPI1

Estou fazendo assim:

CleanupAPI1.Connect;
try
CleanupAPI1.Delete_IECache(1,1);
CleanupAPI1.Delete_IECookies(1,1);
CleanupAPI1.Delete_IEHistory(1,1);
CleanupAPI1.Delete_DesktopRunHistory;
finally
CleanupAPI1.Disconnect;
end;

Quando clico no botão, apresenta o erro na tela:

"Classe não registrada"

Alguém saberia o que tem de errado?
Será que a classe é de uma versão antiga, meu XP é todo atualizado e com 
SP3 etc...
Coloquei a DLL em System32 só para ver se seria a falta dela, mas, como 
eu criei a TLB eu acho que não necessita, mas...
Mesmo assim continua dando o erro.

No site não informa nada, pelo que li, meu inglês não é lá muita coisa 
mas dá para entender um pouco.

Grato por qualquer informação.


Rubem Rocha escreveu:
>
>
> Esta DLL a que você se refere, Cleanup.dll, é um projeto que está 
> hospedado
> no portal CodeProject
> (http://www.codeproject.com/KB/system/Cleanup_API.aspx 
> <http://www.codeproject.com/KB/system/Cleanup_API.aspx>). Pelo que 
> pude ver,
> essa Cleanup.dll possui uma versão em forma de componente COM. Essa 
> forma eu
> vejo que é mais fácil você usar, visto que o Delphi pode gerar uma 
> unit com
> as declarações contidas nela, bastando apenas fazer um uses e usá-la.
>
> Descompacte o .ZIP disponível no endereço mencionado. Depois Vá em
> Project>Import Type Library. Ao aparecer a caixa de diálogo, clique em 
> Add.
> Ao aparecer a caixa de diálogo, vá até o local onde você descompactou o
> pacote, selecione a pasta Cleanup_DLL_COM\Release e selecione o 
> arquivo .DLL
> ou .TLB. Depois, clique em ‘Install’ ou ‘Create Unit’. A diferença desses
> botões é que o primeiro, além de gerar a unit que traduz o componente COM,
> instala ele na paleta de componentes.
>
> Mais uma coisa, sugiro que você leia todo o artigo do link acima 
> mencionado
> para entender como funciona essa DLL.
>
> Boa sorte.
>
> Sds.
>
> De: delphi-br@yahoogrupos.com.br 
> <mailto:delphi-br%40yahoogrupos.com.br> 
> [mailto:delphi-br@yahoogrupos.com.br 
> <mailto:delphi-br%40yahoogrupos.com.br>] Em
> nome de EmbarcaDelphi
> Enviada em: sexta-feira, 26 de junho de 2009 10:51
> Para: delphi-br@yahoogrupos.com.br <mailto:delphi-br%40yahoogrupos.com.br>
> Assunto: [delphi-br] Como chamar esta DLL pelo Delphi?
>
> Olá pessoal...
>
> Como não entendo nada de "C", tenho os fontes de uma DLL escrita nesta
> linguagem que serve para apagar históricos, cookies, etc.. mas não sei
> como chamar ela no meu projeto:
>
> ----------------------------------------------------------
> __declspec( dllexport ) BOOL Delete_IECache(BOOL bDeleteCache = TRUE,
> BOOL bDeleteCacheIndex = FALSE);
> __declspec( dllexport ) BOOL Delete_IECookies(BOOL bDeleteCookies = TRUE,
> BOOL bDeleteCookiesIndex = FALSE);
> __declspec( dllexport ) HRESULT Delete_IEHistory(BOOL bDeleteHistory =
> TRUE,
> BOOL bDeleteHistoryIndex = FALSE);
> __declspec( dllexport ) void Delete_IEAddressBarHistory();
> __declspec( dllexport ) void Delete_DesktopRunHistory();
> __declspec( dllexport ) void Delete_DesktopRecentDocsHistory();
> __declspec( dllexport ) void Delete_DesktopRecycleBinContents();
> ----------------------------------------------------------
>
> Acho que é isso acima :)
> Alguém que intenda de C pode dar uma luz?
> O nome da DLL é "Cleanup.dll".
>
> Grato.
>
> .
>
> 



------------------------------------

-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>




Responder a