use strict; use Win32::OLE qw(in with); use Win32::OLE::Const 'Microsoft PowerPoint'; my $filename = 'somehtml.html'; my $PptApp = Win32::OLE->GetActiveObject('PowerPoint.Application') || Win32::OLE->new('PowerPoint.Application', 'Quit'); $PptApp->{Visible} = 1; my $Presentation = $PptApp->Presentations->Open({Filename=>'somepresentation.ppt', ReadOnly=>1}); $Presentation->SaveAs({Filename => $myfilename, FileFormat=> ppSaveAsHTML});