Flash :: Error Writing Data To A Native Process From An Air Application
Nov 16, 2011
I am writing an AIR application through which I want to open a native process 'wordpad.exe' and write data generated in the AIR application to a document.
The wordpad application opens with a blank document but it generates an error Error#2044: Unhandled IOErrorEvent:.text=Error #3128: Error while writing data to NativeProcess.standardInput.
I've been trying to use ffmpeg with an air app that I made in flash cs5.5. I have it so that ffmpeg.exe needs to be located in the directory where the air app is installed (File.applicationDirectory.nativePath). For some reason this only works when I run the program through the flash dev environment. But when I actually deploy the app, I get error #3219:The NativeProcess could not be started. ffmpeg.exe is located in the same folder.
I actually don't know the full message that it gives...not sure what the property of the error that will give me that message when I catch it. All I know is that it's error 3219. Would this be a profile issue? If i didn't have the extended desktop desktop profile, I don't think I would be able to get this error, I'd get a profiling error wouldn't I? I've disabled user access control as well...I'm using windows 7.
I am looking for utility/helper classes for Adobe AIR/actionscript 3.0 file system and native process utilization. Could someone point me to opensource library projects specific to Adobe AIR..
So I'm trying to copy a file selected by the user into the AIR application storage directory, but when I attempt to resolve the path in the storage directory, I get:
Error #3002: File or directory exists.
I get this even when there is no possible way that the file already exists (I am pretty sure there is no "qqqqq.txt" there).
My code looks like this:
var saveFile:File = File.desktopDirectory; saveFile.browseForOpen("Open File"); saveFile.addEventListener(Event.SELECT, function(e:Event):void
[Code]....
The error is thrown on the line where I try to set the destination as the applicationStorageDirectory, but I have no idea why.
Edit: So I commented out everything below var destination:File = File.applicationStorageDirectory; and it STILL throws the error.
I am trying to make an AIR application, that needs to pass an image (.jpg/.png) to a C++ app, that does number crunching.(this needs to be done very often, like every 2-3 seconds.) I've managed to pass the image by saving it to disk via AIR, then opening this file with the C++ program (and passing the filename as an argument to the C++ program), but this method is really slow, because it involves lots of disk I/O.
Is there a method to send an image directly to a native process?
Edit: There is a good Flash-C++ communication example at [URL] using sockets. The big problem with this method is, that some firewall settings can block the communication (i get a windows firewall warning, when i start the app).
I see a lot of tutorials out there for the flex environment but none for Adobe Flash Cs5. Not even when it is using the AIR build.How exactly does one communicate with a native process using flash or air?
It could run a native process in an adobe air application by enable extendedDesktop. But if create an flex library, does it support running an native process. If yes, how to configure it?
I would like to be able to operate a scanner from my AIR application. Since there's no support for this natively, I'm trying to use the NativeProcess class to start a jar file that can run the scanner. The Java code is using the JTwain library to operate the scanner. The Java application runs fine by itself, and the AIR application can start and communicate with the Java application. The problem seems to be that any time I attempt to use a function from JTwain (which relies on the JTwain.dll), the application dies IF AIR STARTED IT.[code]
Currently I am building an application that launches crtmpd (a rtmp server written in C++).
Whenever I launch the application from within Flash Builder it works great, if I install a release build from an air file the process.start() returns a generic "could not start process" error.
The crtmpserver.exe is stored in applicationDirectory and the config file is kept in applicationStorageDirectoy.
So I've moved it to the native storage directory. But the problem persists. I've found the following though:
startupInfo = new NativeProcessStartupInfo(); startupInfo.executable = binFile; processArgs = new Vector.<String>(); processArgs.push(luaFile.nativePath); startupInfo.arguments = processArgs;
In the IDE after this startupInfo is setup correctly. On client machines all properties of startupInfo are still null.
I've been experimenting with Dynamic Streaming while in the process of writing a tutorial. The documentation is quite clear on a few points: The keyframe interval in the various encodings should be shortThe bufferlength should be at least 2x the keyframe intervalThe player should sense a bandwidth change, by default, within the 4-second sampling interval and call for a switch. Then, the switch could take as long as 2x the keyframe interval after that. What I'm finding is wildly different behavior than this. It takes anywhere from 10-15 seconds for the player to notice the change and call for a switch, then another 20-40 seconds for the switch to happen. When switching up to a higher bitrate stream, this just means the user gets low bitrate video for longer than they ought to. But when switching down due to falling bandwidth, the buffer runs out and the user stares at the rebuffering sign for a lengthy time - long enough to give up on watching the video, for sure.
I've encoded an H.264 MP4 file at 64, 384, and 768 kbps, at 30fps and an "every 60 frames" keyframe interval. I've streamed it rtmp via two different CDNs that use FMS 3.5, into two different Flash video players (JW Player and Flowplayer). I've restricted my bandwidth on Windows XP with Netlimiter 2.0; and on the Mac with 'ipfw'. I've set bufferlength between 4 and 10 seconds. I've tested switching up and switching down. For up, I start with a 200kbps bandwidth limit. The video starts OK with the correct stream, then at 5 seconds I open up the bandwidth to unrestricted. For testing down, I do the opposite: start at unrestricted and then at 00:05 restrict to 200kbps.
My test page, with both players and sample code is at [URL] n-flash-bitrate-switching/ I also have a couple of screen recordings there showing the behavior of the whole process, both switching up and switching down. I thought I've done everything right here - paid attention to every documented detail, but it works rather poorly. Can someone explain whether this is expected behavior, if the players have implemented dynamic switching poorly, or if I'm doing something wrong?
This is a bit of a crazy question, but does anyone out there know how to go about writing an extra compile step into the flex compiler. The idea would be that the MXML compiler would knock out the MXML to AS3 code as it does, but we have an extra step between the AS3 code and the bytecode.
The reason why I ask, is that this would be a great step to handle things like metadata tags to make code changes. A common practice in a lot of frameworks is to have an [Inject] tag before a variable. I.e. [Inject] public var user:IUser.
I'm trying to develop a simple mxml Flex application to start Skype from the AIR/Flashplayer runtime. Is it possible to get back events from a native Windows application? In the simple example of Skype, the OS returns control to the Flex app when Skype exits. But what about native applications which have their own event model and wants to communicate with the Flex event model. For example, a Face detection system which shows "Hello" on a Flex app when the camera detects a face. Can this be done in the current Flex framework?
Am writing a xml from a flash application. The data contains special characters. after the xml is written its not not broken but i cant read the xml anymore. the file attached and tell me what could be the problem.
usually reading in xml, but my client is non-techyi but imagine creating a flash app which creates xml file is a nightmare.... and still open to mistakes from the end user
I have a Flex AIR2 application which uses native process to run CMD.exe. Application running fine on WinXP, Win R 2008 server. But not running on VISTA 64 bit OS. Flex not able to run CMD.exe when application installed in C:Program Files (x86). When I run application as Administrator mode it is working fine. Below is my code, I want to start cmd.exe as Administrator.
Is it possible to get somehow list of running applications/processes and, while running in background, check which process is active?
Additionally - if somehow, the answer was yes, is it possible to react for change of active window / application react just as if it was Event, or bind to it custom event (e.g. Event.SystemActiveAppChange)?
EDIT: Due to probable missunderstanding, I mean local applications - on your win/mac/linux machine - I would like to (in process of learning of language) track what apps I use the most, make a little graph maybe?
So, the point is: in AIR app, developed in FLEX, I would like to get/list all running applications/processes, as well as which one is active (on user's PC/Mac/Linux)
i have an error that i dont understand why appear, the most weird is that happens sometimes but lately happens always, the code that i use is the same and i dont have make any changes to it, in fact i dont execute any code in the start of the application, i use buttons , so i dont get a reason with this error please help me, the error is a dialog that say:Native extension Error: there are packaging errors/warning. Check each native extension in the Flex Build Packaging Page for each target platform. would you like to continue?And when i click yes the program dont start, the debbuger show me the line:
I want to create a flash swf file that will store a token in Local Shared Object. What do I need to do to read that token and look it up in the database on the back end? Is this possible at all?
here is a possible scenario:
User visits my web page A token is generated on the server and stored in the database Token is then saved in LSO User leaves the site (maybe shuts down his computer) and comes back later Token is read, located in the database and the user is recognized (lets say that token is a foreign key that links to other user data stored in the db)
I researched this for quite a while and all I find is that flash can use LSO to store read data for flash movie... Does this mean that the data can not be accessed by the server?
I am creating e-learning material that will be accessedonline by students. Is there anyway that Flash can write to adatabase to tell us how long the student was logged in for and how long there were on a page?
I have been trying to save data from a flash movie to an XML file and have failed to do so how is it possible? how can i for example save a text from a textbox / textarea to an XML file in an specific XML node by pressing a botton? although i am familiar with how to extract data saved in XML files and desplay it in a flash movie.
This is an area of Flash I haven't experimented in, so I don't know where to start. Is it possible to run an SWF, and have Flash export variables externally, as the SWF is running? So for example, export an Array to XML? It doesn't need to be PHP, and stored serverside etc, just written locally on the computer would be fine.
I'm trying to add some menuItems to an AIR app application menu in the mac, I know that is possible to add to the standard one the application have instead of replace the whole menu, but I can't found any example on adding not replacing the whole the menu.
1. Is there any way to send events from one native window of an application to another native window of the same application? For ex. a login window pops up when the app starts in the main window. Once the login is successful, an event should be posted to the main window, so that it starts displaying other things. Right now, I am posting an event, but it is not reaching the main window (nothing shows up in trace and breakpoint is not hit in the main window).
2. Is there a way for any window to grab focus? For ex. the login window above grabs the focus till the creds are keyed in. I mean, the user should not be able to select the main window at all till this window is active.
I am wondering what values should I put in the Process tag of Application.xml considering my application. I've done some studies but I am still unsure and would like some expert opinion To help you help me : I have a video chat application that comes with a contact list, so think skype on the web.
[Code]...
I set a RollerOver because sometimes RTMFP crashes on my server, and by putting the RollOver it seems to help, by re-newing the core process. However when clients are connected before the rollover, then they will not see their friends going online after the rollover which sucks.
I am developing application with Adobe Flex on AIR platform. Using native extension for Android, it is possible to send SMS from my Flex application. Would it also be possible to receive SMS with my application (receive Broadcast carrying information about incoming SMS)? More generally, is it possible to receive Android Broadcasts in my Flex application?
I developing an AIR application in Flex that would be dealing with playing different SWFs. I am finding some issues as these SWFs that I am playing are heavy. I find that the animation is not smooth and is causing the graph of CPU usage to go high (my be because single thread architecture of Flex). I am therefore planning to have a multi process architecture for my application. Something like Google Chrome. I have one main application as one process and other SWFs would be playing in separate process but should be seen inside the main application window. How to make it possible in Flex?
I am writing a desktop application and trying to decide between using AIR (FLex) or Java.Some of the requirements for the application are: needing to securely connect to webservices and JMShave a very interactive UI (lots oflittle and big features)displaying videoCommunicate with a C++ applicationTo implement the web services and JMS for Flex we were thinking of using Merapi to communicate with a Java application. Does this mean we should probably go with Java or does the better graphics capabilities of Flex still make it a better choice?
I need to fetch a flex application from a process in C#.
How can i get access to the externalInterfaceAPI when the flex application is running as a Application?
EDIT: After further reading it looks like it is possible, as from what i understood, a flex stand alone application is a ActiveX "container", so what i need is to get access to the ActiveX container, and from there the externalInterface API.)
whatever you wan't to call it. Nevertheless, curious to know if Air can write inside it's own installed package. I'm referring to the OSX '.app' files found in great numbers in the applications folder. Since every one of these can be opened as a regular folder, i'm guessing that's what they are.
What other fancy filewriting tricks am i missing out on?