Les fichiers .NET peuvent contenir du code conditionnel qui doit être géré par des directives de prétraitement lors du reverse engineering. Une directive de prétraitement est une commande placée au sein du code source qui demande au compilateur d'effectuer une tâche particulière avant que le reste du code ne soit analysé et compilé. La structure d'une directive de prétraitement est la suivante :
#directive symbole
# est suivi du nom de la directive, et le symbole est une constante de compilateur conditionnelle utilisée pour sélectionner des sections particulières de code et pour exclure d'autres sections.
Dans VB .NET, les symboles ont des valeurs.
Dans l'exemple suivant, la directive #if est utilisée avec le symboles FrenchVersion et GermanVersion pour produire des versions en allemand ou en français d'une même application à partir du même code source :
#if FrenchVersion Then ' <code specific to French language version>. #ElseIf GermanVersion Then ' <code specific to French language version>. #Else ' <code specific to other language version>. #End If
Vous pouvez déclarer une liste de symboles pour les directives de prétraitement. Ces symboles sont analysés par des directives de prétraitement : si la condition de la directive est true, l'instruction est conservée ; dans le contraire, l'instruction est supprimée.