Re: Activestate perlapp creates exe that hangs

Andrew Feren <[email protected]>
Newsgroups gmane.comp.lang.perl.poe
Message-ID <[email protected]>
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]
>
tk.pl (text/x-perl, 439 B)
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" };
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.