For future use of pdf2swf for AIR applications it would be necessary to
have the option to get rid of the *allowDomain* command.
Otherwise no converted PDF file could be used with an AIR application.
One option could be a switch, as suggested by Andrew.
Another option could be a "try-catch" block, coded directly into the AS3
code generated by swftools. Which would handle both the
Flashplayer/network and AIR/local use case automatically (if my
assumption is right).
ImO this should be realized by the developers. They know best how to
create such AS3 binary code; and can build the Binaries more easily
(assumption based on my problems trying to compile ;-)
Matthias, what do you think about this?
Do you have other ideas/suggestions/a work around?
Thanks
Hans
Am 07.05.2012 18:05, schrieb Andrew Sinning:
Commenting out the offending lines below has fixed the problem.
I think it would be very beneficial to add an option to the
command-line parameters to suppress the inclusion of
Security.allowDomain("*").
------------------------------------------------------------------------
*From:*Andrew Sinning [mailto:[email protected]]
*Sent:* Sunday, May 06, 2012 6:10 PM
*To:* [email protected]
*Subject:* Re: [Swftools-common] pdf2swf and AIR
As near as I can tell, the relevant lines where the
Security.allowDomain("*") gets inserted into the MainTimeline are in
/lib/as3/script.c, starting on line 89:
__ getlex(c, "[package]flash.system::Security");
__ pushstring(c, "*");
__ callpropvoid(c, "[package]::allowDomain", 1);
Unless somebody advises me otherwise, I will try commenting out these
lines and recompiling. I will do a test tomorrow to determine if this
fixes the problem.
I will have to do this on my Fedora server where I have succeeded in
getting swftools to compile. The process for compiling on Windows
looks to be way beyond me.
------------------------------------------------------------------------
*From:*Andrew Sinning [mailto:[email protected]]
*To:* [email protected]
*Sent:* Sun, 06 May 2012 15:05:24 -0500
*Subject:* [Swftools-common] pdf2swf and AIR
My apologies if this is a duplicate posting. I have subcribed to
the list and have set my preferences to receive my own messages,
but after two days this hasn't shown up in my in box, so I will
try again:
---- my message -->
For most of today and yesterday I have been trying to solve the
problem of bringing a pdf2swf generated swf into an AIR
application. I have read this post, but I don't believe that it
answers the question:
http://www.mail-archive.com/[email protected]/msg03818.html
The problem is that when the external swf (it doesn't matter if
the swf is on a remote server or is on the local file system) is
loaded, there is immediately generated an error:
"SecurityError: Error #3207: Application-sandbox content
cannot access this feature.
at flash.system::Security$/allowDomain()
at p_fla::MainTimeline/frame1()"
Luca Agostini, the poster of the thread above, asserts:
"I think the problem is this row in MainTimeline constructor:
flash.system.Security.allowDomain("*")
that is not supported in Adobe AIR."
I have confirmed this with a test. I made a simple Flash document
with just a shape and single frame. If I include:
import flash.system.Security;
Security.allowDomain("*");
.. then the error is generated.
If I remove those two lines, then the error goes away.
I have read Filip's post carefully, and I have tried to follow his
instructions:
"have you set the local-with-network priviledge for your
generated swf files?
do you generate flash9 swfs? the switch is -T9
also, when you're loading those swf you have to make sure
you use a
SecurityContext for your Loader call (AS3):
yourLoaderObject.load(new URLRequest(url), new
LoaderContext(false,
ApplicationDomain.currentDomain,
SecurityDomain.currentDomain));"
There are a few problems with these instructions:
1) Trying to set the securityDomain of the LoaderContext to
SecurityDomain.currentDomain will throw up an error "Error:Error
#2114: Parameter LoaderContext.securityDomain must be null."
2) It is confusing that Filip is asking "have you set the
local-with-network priviledge for your generated swf files?" It's
not clear to me where this gets set. The GUI tool Gpdf2swf
supports this option, but I don't see a corresponding parameter
for the command line tool. I've tried creating swfs using both
options "Access Local Files" and "Access Network Files" in the
Flash IDE Publish Settings, but neither options corrects the error.
I really think that Luca got it right when he asked:
MainTimeline constructor:
flash.system.Security.allowDomain("*")
that is not supported in Adobe AIR.
It's possible to modify the constructor or delete this feauture?
I have no idea how to modify the source files, yet alone compile
them. I would really love to try testing a version with the
allowDomain command turned off.
Thank you so much!
--Andrew
---------------
SWFTools-common is a self-managed list. To subscribe/unsubscribe, or amend an
existing subscription, please kindly point your favourite web browser
at:<http://lists.nongnu.org/mailman/listinfo/swftools-common>
--
___________________________________________________________________
*Hans J. Nuecke* / Gorch-Fock-Str. 6 . 81827 Muenchen . Germany /
*VservU GmbH*
Home: +49 (89) 45344858 office:
+49 (89) 43906 707
mobile: +49 (173) 5392957 Skype:
hnuecke
private: [email protected]
<mailto:[email protected]> business: [email protected]
<mailto:[email protected]>
website: www.megazine3.de <http://megazine3.de>
Munich HRB 181251 Geschäftsführer: Hans J. Nücke USt-Id:
DE266694113
___________________________________________________________________
---------------
SWFTools-common is a self-managed list. To subscribe/unsubscribe, or amend an
existing subscription, please kindly point your favourite web browser
at:<http://lists.nongnu.org/mailman/listinfo/swftools-common>