For Programmers: Free Programming Magazines  


Home > Archive > PERL Modules > August 2007 > Pointers for AxWindow









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Pointers for AxWindow
Ash

2007-08-23, 6:59 pm

Hi!

I'm using AxWindow to display MS-Word document on the Shell.Explorer.
But once the AxWindow loads MS-Word file, Windows' error message pops
up and the program terminates automatically. The pop up says that
there was "Perl command line interpreter error". It only happens with
Word files and not with Excel sheet.

Is this bug in the module or am I doing something wrong. Your answer
would save me a lot of time, thank you.

Sincerely,
Ashish Rai.


Below is the code:

use Win32::GUI();
use Win32::GUI::AxWindow;
my $Class = 'Shell.Explorer.2';
my $file = "C:/temp/RS.doc"; # This is exactly the same code as
shown in samples in cpan.org except I'm loading ms-office document.
#my $file = "C:/temp/RS.doc";

# Main Window
$Window = new Win32::GUI::Window(
-name => "Window",
-title => "Win32::GUI::AxWindow test",
-pos => [100, 100],
-size => [400, 400],
);

#Add a web browser ActiveX
$Control = new Win32::GUI::AxWindow (
-parent => $Window,
-name => "Control",
-control => $Class,
-pos => [0, 0],
-size => [400, 400],
);


#Register some event
$Control->RegisterEvent("StatusTextChange",
sub {
$self = shift;
$eventid = shift;
print "Event : ", @_, "\n";
} );

# Call Method
$Control->CallMethod("Navigate",$file);

# Event loop
$Window->Show();
Win32::GUI::Dialog();

# Main window event handler

sub Window_Resize {
if (defined $Window) {
($width, $height) = ($Window->GetClientRect)[2..3];
$Control->Move (0, 0);
$Control->Resize ($width, $height);
}
}

sub Win_Terminate
{
$Control->Release();
return -1;
}

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com