2010-04-05 4 views
0

Je pourrais avoir du mal à expliquer cela parce que je suis complètement perdu pour ce qui se passe donc je suis juste à la recherche de conseils. Je pourrais être un peu verbeux parce que je ne sais pas exactement quelle est l'information pertinente.. Les composants personnalisés de .Net "disparaissent" après l'enregistrement de fichier

Je développe une interface graphique pour un projet que je travaille en utilisant .Net (C#)

Une partie des imitateurs d'interface, exactement, ce que nous faisons dans un autre produit. Pour des raisons de cohérence, mon patron veut que je fasse la même chose. J'ai donc eu l'autre logiciel et j'ai copié et collé les composants dans ma nouvelle interface graphique. Cela m'a obligé à introduire une bibliothèque de composants (le désormais dénommé Graphics Server GSNet, donc je ne peux pas aller à eux pour obtenir de l'aide) afin que je puisse implémenter quelques graphiques simples et des widgets température/pression.

Les composants apparaissent bien, et quand je compile, tout semble bien fonctionner. Cependant, à un moment donné de ma programmation, il ne fait que casser. Parfois, l'onglet sur lequel ces composants se trouvent commence à générer des exceptions lorsque j'examine la page du concepteur (exception de méthode manquante), de sorte qu'il ne s'affiche pas. Parfois, les composants de la bibliothèque GSNet n'apparaissent pas. Parfois, si j'essaie de l'exécuter, j'obtiens une exception non instanciée sur l'une de leurs lignes de code dans le fichier de code du concepteur. Parfois, je ne peux pas voir le concepteur du tout.

Peu importe ce que je fais, je ne peux pas l'inverser. Même si je défais ce que je viens de faire, ça ne va pas le réparer. Si cela se produit, je dois revenir à une sauvegarde et recommencer à zéro.

J'ai donc commencé à sauvegarder à peu près toutes les étapes. Je compile et ça marche. Je commente une ligne de code, l'enregistre, puis décommente cette même ligne de code (donc je travaille avec le même code exact) et les composants disparaissent tous. Peu importe la ligne de code que je commente, tant que c'est dans le même projet que ces composants sont utilisés.

Je dois pratiquement utiliser les composants. . . Est-ce que quelqu'un a une suggestion ou est-ce que je peux chercher à déboguer cela?

+0

Est-ce que les fichiers disparaissent? – Naveen

Répondre

0

La seule chose qui me vient à l'esprit est un répertoire bin en lecture seule. J'ai trouvé que .NET a des problèmes si les bibliothèques interop dans le répertoire bin sont en lecture seule. Les interops en lecture seule empêchent généralement les contrôles utilisant ces interops de s'afficher dans le concepteur de formulaires et ainsi de gâcher la compilation (si vous en faites de toute façon une version complète). Une reconstruction peut vous permettre d'exécuter l'application, puis échouer lorsqu'elle atteint la partie en utilisant l'interopérabilité en lecture seule.

Ceci peut ou peut ne pas être votre problème mais c'est tout ce qui vient à l'esprit.

0

Je sais que c'est très tard dans le jeu, mais j'ai juste rencontré ce même problème. J'avais retiré une de nos applications de SVN, et quand j'ai essayé d'ouvrir le formulaire principal pour l'édition, le composant personnalisé n'a pas été défini dans le logiciel, même si je pouvais le voir clairement en tant que classe. On m'a donné le choix de l'ignorer, ce que j'ai fait, et le contrôle personnalisé a rapidement disparu de la forme (apparaissait encore dans le projet). Donc, à la suggestion de mon collègue, j'ai supprimé l'instance de mon disque dur et je l'ai revérifiée à partir de SVN. Avant de faire quoi que ce soit d'autre, j'ai construit le projet pour les deux déboguer &, et cela a résolu le problème. Peut-être que cela aidera quelqu'un d'autre qui trouve cette question SO quand ils rencontrent cela.

Questions connexes