J'essaie de masquer certaines applications VB.NET 2003.Problème de moulage après obfuscation avec Dotfuscator
Les assemblages résultants sont obfusqués et "exécutés" avec quelques erreurs.
J'ai nettoyé tous les problèmes de réflexion potentiels, mais je ne suis pas en mesure de lire la valeur sélectionnée d'une liste déroulante.
je charge le Combobox en utilisant leurs propriétés Datasource, en utilisant une collection de « VTPair » (une classe créée par moi avec 2 propriétés: un de type chaîne et d'autres du type d'objet pour stocker la valeur)
Ce combobox gérer des paires comme "Male | M" ou "Female | F".
Lorsque vous essayez de voir ce qui est sélectionné, j'utilise if mycombo1.SelectedValue = "M" then
Ce code, après l'obscurcissement, me jette une exception qui ne peut pas lancer de type « XX » à la chaîne « M ».
Alors, j'ai changé le code pour quelque chose de plus correct, coulée explicitement la valeur sélectionnée en chaîne:
if ctype(mycombo1.SelectedValue,string) = "M" then
Mais l'erreur est la même. Déboguer mon code original, la propriété SelectedValue est de type "Object" mais c'est une chaîne.
J'ai essayé d'utiliser la propriété ComboBox.SelectedItem
qui est aussi un objet mais cette fois ce qui est à l'intérieur est de type "VTPair" (ma propre classe) et essaie d'accéder à sa propriété "Value" (qui est de type Object) et essayer de lancer à la chaîne échoue à nouveau.
Quelqu'un a-t-il une idée pour "traduire" ce morceau de code pour qu'il fonctionne correctement après Dotfucate?
Merci!
À l'exception de l'exception lors de la lecture de la valeur, l'interface utilisateur est-elle correcte, c'est-à-dire que les valeurs attendues sont affichées dans la zone de liste déroulante? – Timores