How to make entry in systems registry in flex? - apache-flex

I have a desktop application and developing an installer script. I need to check for previous installations whenever this script run. I have no idea how to access registry in flex. any help or reference will be extremely helpful.

Flex, or more specifically AIR/AS3, does not provide access to the Windows Registry. You'll have to build you're own Native Extension to expose this functionality.
Since I was asked for some resource links...
Here are some blogs posts on creating a Native Extension in Windows.
Here are some generic information on building Native Extensions.
And finally, Google should tell you how to access the Windows Registry from C; which is what you want to do inside your Native Extension.

Related

How to allow "Interact with desktop" in a service

I have created a simple VB.NET windows service. I have created a setup package and added the installer using design view -> add installer. I would like to allow this service to interact with the desktop. I am aware that you can go to "services" and allow interaction with the desktop but I would like to do it at install time. I have read many online articles but they refer to c# and the ones I have tried did not work. The way that I assume to do it is to edit the registry entry for the service.I have no real idea of what to do.
Any help appreciated.

How to block user using older version of my App?

I'm developing an application using flex/AIR and right now it changes all the time due to its beta condition.
What could be the best way to block all older versions activity and force the user to update the application?
Thanks.
Edit: This must be achieved without any server side language help (ie: php, java)
I think your best shot is to add an autoupdater to your app, and run it when starting your application. Check the Adobe AIR autoupdate framework. You can implement your logic (blocking the application, asking to update, closing it) after you have compared the versions if doesn't match.
This article might also be helpful: Adding autoupdate features to your air application in 3 easy steps (Actually it is a 2 Steps now).
You could create an entry method that checks the applications local version against the remote version number via a service you expose. If the local version does not match your newest version, don't allow the application to proceed. Instead, offer the download link, or automate the downloading/installation process based on your needs.

What benefits does an AIR app have over a Flex browser app?

Please feel free to add multiple answers, each with a single point, to make the voting work well... and don't add something someone else already said.
All I know about AIR is you can have local storage, but there must be more to it... offline access is another key one but then you can run a SWF locally if you save it to your PC.
The biggest benefits (in addition to LocalStorage/SqlLite support) would be...
Read/Write Access to the local file system (including support for native file system dialogs)
Native Drag and Drop Support
In addition, Air apps aren't just Flash based, but can also use HTML/JavaScript via WebKit
Update:
All the info you need on Air is on the Wikipedia page. (and it's external links) http://en.wikipedia.org/wiki/Adobe_Integrated_Runtime
In short, if you need native filesystem and limited desktop interaction Air is the way to go, if you don't need these features, use Flex in the browser.
If you need additional system integration but still cross platform, try Appcelerator/Titanium, Java/JavaFX, Python with WxWidgets, or C++/QT.
It really depends on what you want to build.
You can find all features specific to AIR here :
http://www.adobe.com/products/air/features/
Running a swf file locally doesn't really work for applications that have been pushed out to end users. The user's won't have access to any updates of the application (which an Air application does). Also a swf run locally might not be able to connect back to the server it came from, depending on the security settings.
In reality the nice part of flex is you don't have to commit to web or air. You can develop an application that can be built to run in both the web and on the desktop. For example you can put a majority of the code in a library project and then have a web specific and desktop specific projects that use that library.
Two other advantages of Air - one is that it allows you manage updates to your application and have the updates automatically pushed out. Second is it supports drag and drop (similar to native file access) so you can support dragging pictures or files onto your application.
AIR apps run using Adobe AIR runtime. It has access to your file system and includes more powerful capabilities. Whereas, a web-based flash/flex app runs in a flash player within a web browser. It runs in a sandbox. It has limitations. It can't access local file systems (without user intervention).
Features of AIR:
Can access file system.
With AIR 2.0 you can access (communicate) to native file (executables) of that OS. Means you can communicate to a C app which does some OS specific functionality from the AIR app.
Encrypted Local Store for securely storing credentials.
Easy drag-and-drop functionality.
Behaves as native desktop applications.
Notifications.
System tray icons.
.. and much more.

How to find references to the file system in a flash application?

I need to disable all the aspects of functionality which access the client file system in a flash/flex application. I started having a look on how to do this. It appears that the package flash.filesystem need to be importated to allow the interaction with the file system.
However, I did not find any reference to this package in the application.
I am a beginner concerning these technologies so maybe I am missing a point here. Do I need to look into an other direction?
Thanks
Basic flash/as3 resource: http://www.adobe.com/devnet/actionscript/as3.html
The flash.filesystem library is for AIR applications only because flash is not supposed to be able to reach outside the browser to affect a client's computer. That would be a security violation. Even AIR apps are highly restricted in this way.
Update:
Related Question:
flash actionscript access filesystem without air?
This is brand-new in Flash 10.
Update 2:
And an older reference in Flash 9 here. Though it mentions that it's still subject to the user turning off permissions via their settings manager.

How to disable public access to the source code in Google Code?

I have a private project, and i want it hosted on google code. this project is just for project members. How to enable browsing and submitting SVN code only for project members? I don't want other people to be able to do this.
How to disable public access to the source code in Google Code?
There are no read restrictions on Google Code, so there's no way to create a project that's completely private.
If you want a private code repository, I recommend you check this question:
Free version control server provider for non-public projects
You can't...
We only intend to host projects that
are open source software projects,
documentation projects directly
related to open source software
development, and projects for the
development and maintenance of open
standards.
http://code.google.com/p/support/wiki/MakingHostingBetter
I think you can't.
Projects hosted at googleCode must be public!
Check FAQ
You can't, but you can hide some tabs
There are of course alternatives to Google Code. BitBucket has free hosting and allows private repositories for free. There are some limits, but for a reasonably small project with few team members you might be OK.
It's currently not possible.
However, there are currently 1663 stars on this feature request. Since this is a feature that you want, you should go along and star it too.
The more stars the feature request gets, the higher the priority it gets. (Well, at least that's to be expected.)

Resources