[pm-h] Perl Win32::OLE issue with custom dll

Michael R. Davis mrdvt92 at yahoo.com
Wed Jul 26 08:52:19 PDT 2017


Folks,I have an application that I'm supporting and it has a memory leak involving Win32::OLE.    The only thing that clears up the memory leak is stopping the Perl application and restarting it.  But, there has got to be a way to clean up the process at run-time if stopping the Perl process cleans it up. right? Is there possibly a way to unload Win32::OLE and then re-load it?  This is the high level process but for some reason the DLL is not cleaning up on object destruction like it should.  Has anyone worked with this kind of thing before?
Simplified code...
my $report   = Win32::OLE->new($class) or die(sprintf("Error: %s. Cannot create object for class %s.", Win32::OLE->LastError, $class));
$rpt->Export($ext, $filename); #Method from dll

$report = undef; #code in DLL is supposed to clean up itself when it goes out of scope

Thanks,
Mike
CPAN: mrdvt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/houston/attachments/20170726/e4b6f63f/attachment.html>


More information about the Houston mailing list