Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Liberar un objeto Com (https://www.clubdelphi.com/foros/showthread.php?t=49586)

marcosl 24-10-2007 22:57:24

Liberar un objeto Com
 
Estoy creando un objeto "x"

var
MiObj: OleVariant;
begin
try
MiObj := CreateOleObject('x');
finnally
MiObj := Unassigned;
end
end;


El tema es que abro es Administrador de tareas y sigue corriendo "x"

¿Como puedo hacer para liberarlo?.

cHackAll 25-10-2007 00:10:19

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var Word: OleVariant;
begin
 Word := CreateOleObject('Word.Application');

...

 Word.Quit;
end;

Creo que es un tema relacionado al ActiveX con el que estes trabajando, en el ejemplo anterior SI finaliza el proceso independientemente de la asignación del objeto porque tiene el método 'Quit' que finaliza el proceso.

Te recomiendo: tienes el nombre de la Clase ('x'), abres el regedit, te vas a HKEY_CLASSES_ROOT y buscas tal cadena SOLO en los Datos, no en Claves ni Valores, al encontrarlo veras una Clave que dice LocalServer32, en el caso de ejemplo del 'DAO.DBEngine.36' verías algo como 'C:\Archivos de programa\Archivos comunes\Microsoft Shared\DAO\dao360.dll', con eso obtendrás el archivo que es el ActiveX... lo abres con Delphi y podrás ver todos sus métodos... talvez con ello encuentres un "Quit", "Exit", "Free", o algo que sea lo que buscas.

PD: Gracias por ayudarme a contestar egostar ;).

Saludos


La franja horaria es GMT +2. Ahora son las 21:38:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi