Urheber eines Flex-Fehlers verheimlichen

Wer möchte schon gerne, dass sein Name im Web mit einem Programmierfehler in Verbindung gebracht wird? Doch genau das passiert ganz schnell, wenn man ein Projekt in seinem Benutzerverzeichnis anlegt und dieses mit Debug-Informationen veröffentlicht – da dies die Standardeinstellung ist, passiert das im Eifer des Gefechtes schnell auch mal versehentlich. Denn dann ist der komplette Pfad zu den zugehörigen Klassen im Flash Debug Player sichtbar (der normale Flash Player zeigt dies nicht an). Das ist nicht nur bei Programmierfehlern peinlich sondern kann auch richtig Probleme machen, wenn der Auftraggeber nicht möchte, dass der Name des Programmierers mit einem Projekt in Verbindung gebracht wird.

Mit dem folgenden einfachen Flex-Inhalt erzwinge ich einen Fehler, um das Verhalten eines veröffentlichten Projektes im Fehlerfall zu testen:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="creationCopmplete_handler(event);">
 
	<mx:Script>
		<![CDATA[
			import mx.events.FlexEvent;
			private function creationCopmplete_handler(event:FlexEvent):void {
				throw new Error("Forced Error");
			}
		]]>
	</mx:Script>
 
</mx:Application>

Bei der normalen Kompilierung erscheint dann eine Meldung inkl. aller Pfade:

exception with full path

Durch die Compiler-Einstellung -debug=false kann dies aber verhindert werden und die Fehlermeldung ist dann in der Folge anonymisiert. Das selbe Ergebnis erzielen Sie übrigens auch über das Menü PROJECT | EXPORT RELEASE BUILD…!

exception with full path

Leider fehlen nun jedoch auch wichtige Informationen für das Debugging. Sprich: Es sollte so oder so ein Projektverzeichnis zum Kompilieren gewählt werden, das keine Rückschlüsse auf den Urheber zulässt – dann muss man sich auch nicht bei einer Debug-Version für Fehler schämen.

2 thoughts on “Urheber eines Flex-Fehlers verheimlichen

  1. Du kannst auch einfach “-verbose-stacktraces” weg lassen. Man spart übrigens auch einige KB dadurch.

    Ich handhabe es so, dass ich jeweils Launcher für das Testen, Debuggen und Veröffentlichen habe. Bei letzterem gibt es dann nur die reduzierte Fehler Ausgabe.

  2. Hallo Sebastian,

    danke für den Tipp. Aber leider gewinnt die Einstellung debug und stellt verbose-stacktraces ebenfalls auf true. Nur wenn ich das Debuggen ausschalte, kann ich die ausführlichen Pfade dadurch trotzdem erzwingen – aber genau das will ich ja nicht.

    Liebe Grüße,

    Sascha.

Comments are closed.