With rising problem of SWF reverse engineering, I was looking for a simple tool that does SWF protection. There are variety of tools out there, but one got the hold of my eye, so I decided to do a little testing. Not that I have something to hide, as I usually write GPL code, but when I do it for clients, then it is reasonable to mess up some sensitive code parts.
That tool is SWF Protector 3.0 which has nice interface and it is very simple to use.
According to author, it provides unbreakable protection for reverse engineering. I do not believe that, as everyting is breakable sooner or later, but for now it does the job good. It has two levels of protection, for Actionscript 2, for which I do not care about as I don’t use AS2, and two for AS3: Obfuscate and Protect.
Obfuscate does not protect SWF from decompressing and reverse engineering, but it really messes up code beyond readable. Protect protects from reverse engineering completely. Good thing is that default setting is to do both at once. However, since they increase size of the file, if size of SWF is really important, Read more…
What irritates me the most in Flex Builder 3 (windows) or Flex3 for Eclipse (linux), is when you upgrade SDK, you loose autocomplete or some packages cannot be found by autocomplete.
For example, most common error is when you write import flash. and want to get events, all you can see is flash.errors but not flash.events or any other.
Problem: (this is just pure speculation)
Since FB3 comes with FlashPlayer 9.x, and most probably that you have 10.x by now, adding SDK looses itself between versions. No matter if you set in SDK’s ini file that target player is 10.
How to fix it:
Go to your project properties -> Flex Builder Path, choose Library tab, and expand your SDK.
DELETE playerglobal.swc then add playerglobal.swc manually from SDK.
(same-same but its somehow very different).
Now, clean your project and WOA! Now you have autocompletion and can see all packages.
Gmail is not allowing you to make nice HTML signature by default, ones like you can make in your Thunderbird, Outlook or any other mail application. However, every problem has it’s solution. One way or the other. Let me mention, this tutorial works only for Firefox or Firefox-based browsers, like Flock.
So, let’s start… Read more…
I have seen that many of the junior Flex programmers have problems in understanding how events in Adobe Flex works and how should be used. So, I find a good thing to explain events a bit more. I have already wrote about custom events in this article. It’s time to go a bit deeper. Read more…
I had a few times need to create and/or edit photo, but I wasnt on my computer, on known system, once it was at Zurich’s airport.
So, what do you do? If you have Adobe’s Photoshop Express online account, nothing to worry. If you just need to do some quick edit, but complex enough that Microsoft’s Paint cannot do we have solution.
At Pixlr (click for the app), we have an online and completely free Photoshop-like application. Not so complex as real Photoshop, but far better then majority of free image editing applications (save Gimp and Krita).
It is capable of saving your image as JPEG, PNG and BMP formats which you download immediately to your machine.
Working with Pixlr is a breeze. It’s worth checking out.
In Flex 3 and ActionScript 3, events are the most important. As AS3 is completely event-driven asynchronimus language, commands are not waiting to finish, but executed in order, and waits for no one and nothing. However, there are a lot of code that dispaches and capture events in a way that is very error-prone. Read more…
Popups are something that one cannot and should not avoid nowadays in web applications. I am heavy user of popups, and mostly, I do not want them to be centered on the screen/browser but opened at some coordinates at the component that invoked it.
That is nice but one problem rises. What if your component (let’s say button, link label or whatever else) is at the right edge of the screen, and usual popup opens to the right? What if it is in the right bottom of the screen? Read more…