$ perl -w -d:Trace -I../lib -I../blib/arch 3_ole.t >> 3_ole.t:52: $Excel::Variant = 1; >> 3_ole.t:53: $Excel::CP = CP_UTF8; >> ../lib/Win32/OLE/Lite.pm:40: sub CP_UTF8 {65001;} >> 3_ole.t:57: $^W = 1; >> 3_ole.t:59: STDOUT->autoflush(1); >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:490: my $old = new SelectSaver qualify($_[0], caller); >> /usr/lib/perl5/5.14/Symbol.pm:117: my ($name) = @_; >> /usr/lib/perl5/5.14/Symbol.pm:118: if (!ref($name) && index($name, '::') == -1 && index($name, "'") == -1) { >> /usr/lib/perl5/5.14/Symbol.pm:131: $name; >> /usr/lib/perl5/5.14/SelectSaver.pm:42: @_ >= 1 && @_ <= 2 or croak 'usage: SelectSaver->new( [FILEHANDLE] )'; >> /usr/lib/perl5/5.14/SelectSaver.pm:43: my $fh = select; >> /usr/lib/perl5/5.14/SelectSaver.pm:44: my $self = bless \$fh, $_[0]; >> /usr/lib/perl5/5.14/SelectSaver.pm:45: select qualify($_[1], caller) if @_ > 1; >> /usr/lib/perl5/5.14/Symbol.pm:117: my ($name) = @_; >> /usr/lib/perl5/5.14/Symbol.pm:118: if (!ref($name) && index($name, '::') == -1 && index($name, "'") == -1) { >> /usr/lib/perl5/5.14/Symbol.pm:131: $name; >> /usr/lib/perl5/5.14/SelectSaver.pm:46: $self; >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:491: my $prev = $|; >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:492: $| = @_ > 1 ? $_[1] : 1; >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:493: $prev; >> /usr/lib/perl5/5.14/SelectSaver.pm:50: my $self = $_[0]; >> /usr/lib/perl5/5.14/SelectSaver.pm:51: select $$self; >> 3_ole.t:60: STDERR->autoflush(1); >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:490: my $old = new SelectSaver qualify($_[0], caller); >> /usr/lib/perl5/5.14/Symbol.pm:117: my ($name) = @_; >> /usr/lib/perl5/5.14/Symbol.pm:118: if (!ref($name) && index($name, '::') == -1 && index($name, "'") == -1) { >> /usr/lib/perl5/5.14/Symbol.pm:131: $name; >> /usr/lib/perl5/5.14/SelectSaver.pm:42: @_ >= 1 && @_ <= 2 or croak 'usage: SelectSaver->new( [FILEHANDLE] )'; >> /usr/lib/perl5/5.14/SelectSaver.pm:43: my $fh = select; >> /usr/lib/perl5/5.14/SelectSaver.pm:44: my $self = bless \$fh, $_[0]; >> /usr/lib/perl5/5.14/SelectSaver.pm:45: select qualify($_[1], caller) if @_ > 1; >> /usr/lib/perl5/5.14/Symbol.pm:117: my ($name) = @_; >> /usr/lib/perl5/5.14/Symbol.pm:118: if (!ref($name) && index($name, '::') == -1 && index($name, "'") == -1) { >> /usr/lib/perl5/5.14/Symbol.pm:131: $name; >> /usr/lib/perl5/5.14/SelectSaver.pm:46: $self; >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:491: my $prev = $|; >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:492: $| = @_ > 1 ? $_[1] : 1; >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/IO/Handle.pm:493: $prev; >> /usr/lib/perl5/5.14/SelectSaver.pm:50: my $self = $_[0]; >> /usr/lib/perl5/5.14/SelectSaver.pm:51: select $$self; >> 3_ole.t:62: open(ME,$0) or die $!; >> 3_ole.t:63: my $TestCount = grep(/\+\+\$Test/,); >> 3_ole.t:64: close(ME); >> 3_ole.t:87: my $Excel; >> 3_ole.t:104: $Test = 0; >> 3_ole.t:105: print "1..$TestCount\n"; 1..58 >> 3_ole.t:106: my $File = cwd . "\\test.xls"; >> /usr/lib/perl5/5.14/i686-cygwin-threads-64int/Cwd.pm:406: *cwd = sub { &$orig_cwd() } >> 3_ole.t:107: if ($^O eq 'cygwin') { >> 3_ole.t:108: $File =~ s#\\#/#g; >> 3_ole.t:109: chomp($File = `cygpath -w '$File'`); >> 3_ole.t:112: $File =~ s#/#\\#g; >> 3_ole.t:113: unlink $File if -f $File; >> 3_ole.t:114: print "# File is '$File'\n"; # File is 'D:\cygwin\home\vanoosterha\.cpan\build\Win32-OLE-0.1709-fEZAoY\t\test.xls' >> 3_ole.t:116: printf "# Excel is %s\n", $Excel; # Excel is Excel=HASH(0x202a6e68) >> 3_ole.t:117: my $Type = Win32::OLE->QueryObjectType($Excel); >> ../lib/Win32/OLE/Lite.pm:211: my ($self,$key) = @_; >> ../lib/Win32/OLE/Lite.pm:212: if ($key eq "_NewEnum") { >> ../lib/Win32/OLE/Lite.pm:216: $self->Fetch($key, !$Win32::OLE::Strict); >> 3_ole.t:118: print "# App object type is $Type\n"; # App object type is _Application >> 3_ole.t:119: printf "ok %d\n", ++$Test; ok 1 >> 3_ole.t:122: my $Obj; >> 3_ole.t:123: my $Value = Win32::OLE::CreateObject('Excel.Application', $Obj); >> ../lib/Win32/OLE/Lite.pm:63: if (ref($_[0]) && UNIVERSAL::isa($_[0],'Win32::OLE')) { >> ../lib/Win32/OLE/Lite.pm:70: return Win32::OLE->new($_[1]) if $_[0] eq 'Win32::OLE'; >> ../lib/Win32/OLE/Lite.pm:73: $_[1] = Win32::OLE->new($_[0]); >> ../lib/Win32/OLE/Lite.pm:74: return defined $_[1]; >> 3_ole.t:124: print "not " unless $Value && UNIVERSAL::isa($Obj, 'Win32::OLE'); >> 3_ole.t:125: printf "ok %d\n", ++$Test; ok 2 >> 3_ole.t:126: $Obj->Quit if defined $Obj; >> ../lib/Win32/OLE/Lite.pm:150: my $self = shift; >> ../lib/Win32/OLE/Lite.pm:151: my $autoload = substr $AUTOLOAD, rindex($AUTOLOAD, ':')+1; >> ../lib/Win32/OLE/Lite.pm:152: _croak("Cannot autoload class method \"$autoload\"") >> ../lib/Win32/OLE/Lite.pm:154: my $success = $self->Dispatch($autoload, my $retval, @_); >> ../lib/Win32/OLE/Lite.pm:211: my ($self,$key) = @_; >> ../lib/Win32/OLE/Lite.pm:212: if ($key eq "_NewEnum") { >> ../lib/Win32/OLE/Lite.pm:216: $self->Fetch($key, !$Win32::OLE::Strict); >> ../lib/Win32/OLE/Lite.pm:155: unless (defined $success || ($^H & 0x200) != 0) { >> ../lib/Win32/OLE/Lite.pm:159: return $retval; >> 3_ole.t:129: $Excel->{SheetsInNewWorkbook} = 3; >> ../lib/Win32/OLE/Lite.pm:220: my ($self,$key,$value) = @_; >> ../lib/Win32/OLE/Lite.pm:221: $self->Store($key, $value, !$Win32::OLE::Strict); >> 3_ole.t:130: my $Book = $Excel->Workbooks->Add; >> 3_ole.t:28: my $self = shift; >> 3_ole.t:29: $AUTOLOAD = "SUPER::" . substr $AUTOLOAD, rindex($AUTOLOAD, ':')+1; >> 3_ole.t:30: my $retval = $self->$AUTOLOAD(@_); >> ../lib/Win32/OLE/Lite.pm:150: my $self = shift; >> ../lib/Win32/OLE/Lite.pm:151: my $autoload = substr $AUTOLOAD, rindex($AUTOLOAD, ':')+1; >> ../lib/Win32/OLE/Lite.pm:152: _croak("Cannot autoload class method \"$autoload\"") >> ../lib/Win32/OLE/Lite.pm:154: my $success = $self->Dispatch($autoload, my $retval, @_); >> ../lib/Win32/OLE/Lite.pm:211: my ($self,$key) = @_; >> ../lib/Win32/OLE/Lite.pm:212: if ($key eq "_NewEnum") { >> ../lib/Win32/OLE/Lite.pm:216: $self->Fetch($key, !$Win32::OLE::Strict); >> ../lib/Win32/OLE/Lite.pm:155: unless (defined $success || ($^H & 0x200) != 0) { >> ../lib/Win32/OLE/Lite.pm:159: return $retval; >> 3_ole.t:31: return $retval if defined($retval) || $AUTOLOAD eq 'DESTROY'; >> 3_ole.t:28: my $self = shift; >> 3_ole.t:29: $AUTOLOAD = "SUPER::" . substr $AUTOLOAD, rindex($AUTOLOAD, ':')+1; >> 3_ole.t:30: my $retval = $self->$AUTOLOAD(@_); >> ../lib/Win32/OLE/Lite.pm:150: my $self = shift; >> ../lib/Win32/OLE/Lite.pm:151: my $autoload = substr $AUTOLOAD, rindex($AUTOLOAD, ':')+1; >> ../lib/Win32/OLE/Lite.pm:152: _croak("Cannot autoload class method \"$autoload\"") >> ../lib/Win32/OLE/Lite.pm:154: my $success = $self->Dispatch($autoload, my $retval, @_); >> ../lib/Win32/OLE/Lite.pm:211: my ($self,$key) = @_; >> ../lib/Win32/OLE/Lite.pm:212: if ($key eq "_NewEnum") { >> ../lib/Win32/OLE/Lite.pm:216: $self->Fetch($key, !$Win32::OLE::Strict); >> /usr/lib/perl5/5.14/Carp.pm:81: sub carp { warn shortmess @_ } >> /usr/lib/perl5/5.14/Carp.pm:264: return "$err at $i{file} line $i{line}$tid_msg\n"; OLE exception from "Microsoft Excel": Microsoft Excel cannot open or save any more documents because there is not enough available memory or disk space. • To make more memory available, close workbooks or programs you no longer need. • To free disk space, delete files you no longer need from the disk you are saving to. Win32::OLE(0.1709) error 0x800a03ec in METHOD/PROPERTYGET "Add" at 3_ole.t line 130 >> ../lib/Win32/OLE/Lite.pm:155: unless (defined $success || ($^H & 0x200) != 0) { >> ../lib/Win32/OLE/Lite.pm:159: return $retval; >> 3_ole.t:31: return $retval if defined($retval) || $AUTOLOAD eq 'DESTROY'; >> 3_ole.t:32: printf "# $AUTOLOAD returned OLE error 0x%08x\n", $LastError; # SUPER::Add returned OLE error 0xffffffff800a03ec >> 3_ole.t:33: $::Fail = $::Test; >> 3_ole.t:34: return; >> ../lib/Win32/OLE/Lite.pm:211: my ($self,$key) = @_; >> ../lib/Win32/OLE/Lite.pm:212: if ($key eq "_NewEnum") { >> ../lib/Win32/OLE/Lite.pm:216: $self->Fetch($key, !$Win32::OLE::Strict); >> 3_ole.t:131: $Type = Win32::OLE->QueryObjectType($Book); Win32::OLE->QueryObjectType: object is not a Win32::OLE object at 3_ole.t line 131. >> 3_ole.t:132: print "# Book object type is $Type\n"; Use of uninitialized value $Type in concatenation (.) or string at 3_ole.t line 132. # Book object type is >> 3_ole.t:133: print "not " unless defined $Book; not >> 3_ole.t:134: printf "ok %d\n", ++$Test; ok 3 >> 3_ole.t:137: print "not " unless UNIVERSAL::isa($Book,'Excel'); not >> 3_ole.t:138: printf "ok %d\n", ++$Test; ok 4 >> 3_ole.t:141: eval { local $Excel::Warn = 3; $Book->Xyzzy(223); }; >> 3_ole.t:141: eval { local $Excel::Warn = 3; $Book->Xyzzy(223); }; >> 3_ole.t:141: eval { local $Excel::Warn = 3; $Book->Xyzzy(223); }; >> 3_ole.t:142: my $Msg = $@; >> 3_ole.t:143: chomp $Msg; >> 3_ole.t:144: $Msg =~ s/\n/\n\# /g; >> 3_ole.t:145: print "# Died with msg:\n# $Msg\n"; # Died with msg: # Can't call method "Xyzzy" on an undefined value at 3_ole.t line 141. >> 3_ole.t:146: print "not " unless $@; >> 3_ole.t:147: printf "ok %d\n", ++$Test; ok 5