2009-02-26 6 views
0

J'essaye de créer un autre dll avec juste des formes et une certaine méthode de coquille pour appeler un exe externe tout en permettant à ma forme principale d'exécuter le tri non-trompé de quelque chose comme un pseudo multithreading. Et toutes ces bonté saines sont dans l'ancienne application vb6 héritage.Meilleure pratique pour la création d'une DLL .net dll vs vb6 pour l'application de bureau VB6?

Alors j'essaie de décider si je devrais utiliser .net pour écrire le dll ou vb6 pour écrire le dll po Est-ce important, et quel est le minimum/ticks ou tout ce que je devrais savoir avant de franchir le pas?

Merci

Répondre

2

Si vous voulez un formulaire indépendant alors un EXE ActiveX devrait être suffisant. Un formulaire indépendant est un formulaire qui peut être affiché et l'application appelante continue à s'exécuter. Les deux ne s'interpénètrent pas. Une DLL .NET est exagérée dans ce cas.

Si vous avez besoin de quelque chose qui implique le multitâche traditionnel, comme prendre un morceau de données et le traiter, alors une DLL .NET peut être une meilleure solution car le multitâche est plus simple que le EXE-> Active Solution EXE de VB6. En fonction de votre autre question, je pense que la création d'une classe multi-usage globale qui expose les méthodes et les paramètres pour appeler les formulaires dont vous avez besoin dans un EXE ActiveX référencé par votre EXE sera la voie à suivre.

Plus de détails m'aideraient à trouver une meilleure réponse.

@EDIT APRÈS UN COMMENTAIRE

transférer ensuite les formes et les objets sur l'ActiveX EXE serait la bonne façon de procéder. Ensuite, vous pouvez référencer l'EXE ActiveX à partir de l'EXE d'origine.

Le seul problème est de savoir si ce que vous copiez est vraiment autonome. Les bonnes nouvelles sont qu'en restant dans VB6 vous allez attraper tout problème immédiatement plutôt que de vous demander si c'est un artefact du processus de conversion. Plus tard, vous pouvez vous concentrer sur une conversion vers .NET si c'est votre objectif à long terme.

+0

@RS pour l'instant c'est strictement exe/form est un éditeur-bouton appelle un autre formulaire qui shell un exe, & deux d'entre eux qui courent à côté de l'exe/formulaire principal. Jusqu'à présent, pas de multitâche nécessaire pour ces formes d'enfant pour le moment. De quels autres détails auriez-vous besoin? Merci! – melaos

0

Je pense que cela est lié à your other question? Dans ce cas, vous n'avez pas vraiment besoin d'une DLL - je pense que vous avez mal compris la réponse de RS Conley. Espérons que cela aide, Mark

+0

MarkJ, je pensais que l'idée était de déplacer les autres choses vers une DLL de sorte que je n'ai plus besoin de changer mon application pour un exe ActiveX? Merci. – melaos

+0

Depuis que j'ai écrit cela et vous avez répondu, RS Conley a mis une réponse à cette question - jetez un oeil à ce – MarkJ

Questions connexes