I don't use Tk, but I do use perlapp and POE. The attached script works
compiled with perlapp and as a vanilla perl script. (By works I mean no
more error messages when compiled. The script still doesn't *do*
anything ;-)
The important magic seems to be
use POE qw (Loop::TkActiveState);
without including TkActiveState when you use POE Loop::Select seems to
be preferred.
The rest of the use statements are mostly to get perlapp to include
modules without a bunch of --add arguments.
-Andrew
Craig Votava wrote:
Rocco-
Thank you very much for continuing to help me on this issue. Nobody
else (activestate, perlmonks, netnews, etc) seems to be able to.
I started putting print statements in the POE kernel and various Loop
modules to see the differences between running the *.pl and *.exe on
Windows.
When running the *.pl I see POE::Loop::TkCommon -> POE::Loop::Tk ->
POE::Loop::TkActiveState
When running the *.exe I see POE::Loop::Select
Obviously, POE::Kernel cannot seem to realize it needs Tk when running
from the *.exe - I'm trying to figure out how that code works now.
Any hints or pointers are appreciated!
Thanks
-Craig
On Apr 22, 2009, at 1:49 AM, Rocco Caputo wrote:
Maybe exception handling is catching an error?
Before you use any POE modules, please define this subroutine:
sub POE::Kernel::CATCH_EXCEPTIONS () { 0 }
That will disable exception handling, which may uncover something
useful.
--
Rocco Caputo - [email protected]
use warnings;
use strict;
use Tk;
use POE qw (Loop::TkActiveState);
use POE::Loop::TkActiveState;
use POE::Kernel;
use POE::Session;
use POE::Resource::Aliases;
use POE::Resource::Events;
use POE::Resource::Extrefs;
use POE::Resource::FileHandles;
use POE::Resource::Sessions;
use POE::Resource::SIDs;
use POE::Resource::Signals;
use POE::Resource::Statistics;
if(! defined($poe_main_window)) { die "\$poe_main_window not defined" };