in reply to Initializing a COM object

Whenever you're trying OLE stuff (COM is different from OLE!), and it doesn't work out via Perl, try it via Excel or WSH (Windows Scripting Host). If you can get it to work in Excel and/or WSH, it's easy to get it to work with Perl afterwards. My guess is that some part of the API is not as you describe it, but you give us neither code nor error message, which makes diagnosis a bit hard.

As an aside, you don't need to quote the dot:

my $obj = Win32::OLE->new('STATANPKG.PDG3');