J'ai une bibliothèque X, qui a une classe C qui utilise le composant Y. Cependant, Y n'est pas disponible en 64 bits, donc il a été remplacé par le composant Z, mais je veux toujours utiliser Y si disponible.Puis-je utiliser une bibliothèque qui fait référence à un assemblage indisponible, s'il n'est pas utilisé?
Je voudrais faire référence à Y et Z et ensuite
C.vb:
#If 32bit then
Class C
// implementation of C using Y
End Class
#End If
C64.vb
#If 64bit then
Public Class C
// implementation of C using Z
End Class
#End If
Note: Commentaires style C en raison mettre en évidence les erreurs avec les commentaires vb. Le problème, comme je le vois, est que je vais avoir une référence à Y dans la version 64 bits (c'est un objet COM, donc ce serait un assembly interop, si cela fait une différence). En supposant que Y n'est pas appelé de n'importe où dans le code, serai-je capable d'instancier C?
Merci, Hans. Y a certaines fonctionnalités que Z n'a pas, et je pense qu'il est possible que dans certains cas je pourrais vouloir utiliser l'assembly 32 bits sur un système 64 bits. Je devrais construire une version 32 bits spécifique pour cela, n'est-ce pas? – raven
Définissez simplement le paramètre Platform Target du projet EXE sur x86 et vous pouvez toujours utiliser Y, même sur un système d'exploitation 64 bits. –
Merci beaucoup, Hans. Vous êtes vraiment utile. Je posais cette question parce que dans ce cas, je perdrais les avantages d'utiliser un "si" régulier au lieu de "#if" (je dois maintenir les deux versions de toute façon). – raven