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 >>>>>