Τον τρόπο κλήσης μιας συγκρότησης Visual Basic .NET ή Visual Basic 2005 από τη Visual Basic 6.0

ΕΙΣΑΓΩΓΗ

Αυτό το άρθρο περιγράφει τον τρόπο χρήσης της Microsoft Visual Basic .NET ή Microsoft Visual Basic 2005 για να δημιουργήσετε μια διαχειριζόμενη συγκρότηση που μπορούν να κληθούν από την Microsoft Visual Basic 6.0.

Περισσότερες πληροφορίες

Κατευθυντήριες γραμμές για την έκθεση των τύπων .NET COM

Όταν θέλετε να εκθέσετε τύπους σε μια συγκρότηση .NET της Microsoft για εφαρμογές μοντέλου αντικειμένου στοιχείου (COM), εξετάστε τις παρακάτω απαιτήσεις διαλειτουργικότητας COM κατά το χρόνο σχεδίασης. Διαχειριζόμενοι τύποι (κλάση, διασύνδεση, δομή, απαρίθμησηςκαι άλλους) αλληλεπιδρούν καλά με εφαρμογές-πελάτες COM όταν ακολουθείτε αυτές τις οδηγίες:
  • Ορισμός διασυνδέσεις και ρητά την εφαρμογή τους σε κατηγορίες. Διαλειτουργικότητα COM, παρέχει ένα μηχανισμό για να δημιουργήσετε αυτόματα μια διασύνδεση που περιέχει όλα τα μέλη της κλάσης και των μελών της βασικής κλάσης. Ωστόσο, είναι καλύτερα να παρέχουν ρητές διασυνδέσεις και θέτει ρητά.
  • Να δηλώσετε όλες τις διαχειριζόμενες τύπους που θέλετε να εκθέσετε σε COM ως δημόσιο. Μόνο δημόσια τύποι στη συγκρότηση έχουν καταχωρηθεί και να εξαχθούν σε βιβλιοθήκη τύπων. Επομένως, μόνο δημόσια τύποι είναι ορατή στο COM.
  • Δηλώστε όλα τύπου μέλη (μέθοδοι, ιδιότητες, πεδία και συμβάντα) που θέλετε να εκθέσετε σε COM ως δημόσιο. Τα μέλη της δημόσιας τύπους πρέπει να είναι δημόσια να είναι ορατή στο COM. Από προεπιλογή, εμφανίζονται δημόσια τους τύπους και τα μέλη. Εάν έχετε για να αποκρύψετε έναν τύπο ή ένα μέλος από το στοιχείο ελέγχου ορατότητα τύπο ή μέλος σε εφαρμογές-πελάτες COM, χρησιμοποιήστε το χαρακτηριστικό ComVisibleAttribute .
  • Τύποι πρέπει να έχουν μια δημόσια προεπιλεγμένη κατασκευή να δημιουργηθεί μέσω COM. διαχειριζόμενοι, δημόσια τύποι είναι ορατή στο COM. Ωστόσο, χωρίς μια δημόσια προεπιλεγμένη κατασκευή (μια κατασκευή χωρίς ορίσματα), COM, οι υπολογιστές-πελάτες δεν είναι δυνατό να δημιουργήσει μια παρουσία του τύπου. Τους πελάτες COM να χρησιμοποιήσετε τον τύπο εάν ο τύπος έχει δημιουργηθεί με άλλο τρόπο και στον υπολογιστή-πελάτη COM επιστρέφεται η παρουσία. Μπορείτε να συμπεριλάβετε υπερφορτωμένο κατασκευές που δέχονται διάφορα ορίσματα για αυτούς τους τύπους. Ωστόσο, οι κατασκευές που δέχεται ορίσματα μπορεί να καλεσθεί μόνο από το διαχειριζόμενο κώδικα (.NET).
  • Οι τύποι δεν είναι δυνατό να είναι συνοπτικό. Οι υπολογιστές-πελάτες του .NET ούτε τους πελάτες COM να δημιουργήσετε παρουσιών των τύπων αφηρημένη.
  • Χρησιμοποιήστε το πρότυπο COMClass σε Visual Basic .NET ή Visual Basic του 2005. Όταν προσθέτετε μια νέα κλάση που σκοπεύετε να εκθέσουν σε εφαρμογές COM, μπορείτε να χρησιμοποιήσετε το πρότυπο COMClass που παρέχεται από τη Visual Basic .NET ή Visual Basic 2005. Το COMClass το πρότυπο δημιουργεί μια κλάση που περιλαμβάνει το χαρακτηριστικό COMClassAttribute και δημιουργεί τα GUID για το CLSID, το Αναγνωριστικό διασύνδεσης και το Αναγνωριστικό συμβάντος που εκτίθενται από τον τύπο. Επιπλέον, το COMClass το πρότυπο δημιουργεί μια δημόσια κατασκευή χωρίς παραμέτρους. Αυτός είναι ο ευκολότερος τρόπος για να δημιουργήσετε μια νέα κλάση που ακολουθεί τις κατευθυντήριες γραμμές για τη δημιουργία τύποι δυνατή η κλήση COM.

Καταχώρηση της συγκρότησης .NET για διαλειτουργικότητα COM και να δημιουργήσετε μια βιβλιοθήκη τύπων

Για τη Visual Basic 6.0 για να αλληλεπιδράσετε με επιτυχία με ένα διαχειριζόμενο στοιχείο, πρέπει να καταχωρήσετε συγκρότησης για διαλειτουργικότητα COM και να δημιουργήσει μια βιβλιοθήκη τύπων. Αυτή η καταχώρηση πρέπει να εκτελούνται σε κάθε υπολογιστή όπου μια εφαρμογή-πελάτης COM αλληλεπιδρά με το συγκρότημα. Η βιβλιοθήκη τύπων παρέχει πληροφορίες τύπου για τα εκτεθειμένα τύπων στη συγκρότηση σε εφαρμογές-πελάτες COM. Η διαδικασία για αυτήν την ενέργεια εξαρτάται από το εάν εργάζεστε στον υπολογιστή ανάπτυξης ή στον υπολογιστή προορισμού.

Στον υπολογιστή ανάπτυξης Microsoft Visual Studio .NET ή Microsoft Visual Studio 2005 αυτόματα δημιουργεί μια βιβλιοθήκη τύπων και καταχωρεί κατά τη διάρκεια κατασκευής, αν το
Εγγραφείτε για διαλειτουργικότητα COM πλαίσιο ελέγχου είναι επιλεγμένο στην περιοχή ιδιότητες ρύθμισης παραμέτρων του έργου. Εάν χρησιμοποιείται το COMClass το πρότυπο όταν δημιουργήσατε την κλάση, Visual Studio .NET ή Visual Studio 2005 επιλέγει αυτόματα το πλαίσιο ελέγχου καταχώρηση για διαλειτουργικότητα . Για να βεβαιωθείτε ότι είναι επιλεγμένο το πλαίσιο ελέγχου καταχώρηση για διαλειτουργικότητα COM , στο Visual Studio .NET ή Visual Studio 2005, ακολουθήστε τα εξής βήματα:
  1. Ξεκινήστε το Visual Studio .NET ή Visual Studio 2005.
  2. Ανοίξτε τη λύση που περιέχει το έργο που θέλετε να δημιουργήσετε για διαλειτουργικότητα.
  3. Στο μενού Προβολή , κάντε κλικ στην επιλογή Εξερεύνηση λύσεων.
  4. Στην Εξερεύνηση λύσεων, κάντε δεξιό κλικ στο έργο που θέλετε να δημιουργήσετε για διαλειτουργικότητα COM και, στη συνέχεια, κάντε κλικ στο κουμπί
    Ιδιότητες.
  5. Κάντε κλικ στο κουμπί Ιδιότητες παραμέτρωνκαι, στη συνέχεια, κάντε κλικ στον κόμβο Δόμηση .

    Σημείωση Στο Visual Studio 2005, κάντε κλικ στο κουμπί μεταγλώττιση στο αριστερό τμήμα του παραθύρου.
  6. Κάντε κλικ για να επιλέξετε το πλαίσιο ελέγχου καταχώρηση για διαλειτουργικότητα . Αυτή η επιλογή ενεργοποιείται μόνο σε έργα βιβλιοθήκης κλάσεων.
  7. Κάντε κλικ στο κουμπί OK για να κλείσετε το πλαίσιο διαλόγου Σελίδες ιδιοτήτων .
Εάν το Visual Studio .NET ή Visual Studio 2005 δεν είναι εγκατεστημένο ή εάν πρέπει να δημιουργήσετε και να καταχωρήσετε ένα αρχείο βιβλιοθήκης (.tlb) τύπου για διαχειριζόμενες συγκρότησης με μη αυτόματο τρόπο, χρησιμοποιήστε το εργαλείο δήλωσης συγκρότησης (RegAsm.exe) με το διακόπτη/TLB . Εάν η διαχειριζόμενη συγκρότηση είναι μια ιδιωτική συγκρότηση και που πρόκειται να τοποθετήσετε διαχειριζόμενη συγκρότησης σε διαφορετικό φάκελο από τη διαδικασία κεντρικού υπολογιστή (EXE), πρέπει επίσης να χρησιμοποιείτε το διακόπτη /Codebase .

Μια ιδιωτική συγκρότηση αναπτύσσεται με μια εφαρμογή και είναι διαθέσιμη για αποκλειστική χρήση αυτής της εφαρμογής. Άλλες εφαρμογές χωρίς κοινή χρήση η ιδιωτική συγκρότηση. Ιδιωτικό συγκροτήσεις έχουν σχεδιαστεί για να εγκατασταθούν στον ίδιο φάκελο με τη διαδικασία κεντρικού υπολογιστή (EXE). Με μια εφαρμογή-πελάτης COM, αυτό σημαίνει ότι η συγκρότηση βρίσκεται στον ίδιο φάκελο με την εφαρμογή. Κοινόχρηστη συγκρότηση είναι διαθέσιμο για χρήση από πολλές εφαρμογές στον υπολογιστή. Για να δημιουργήσετε μια κοινόχρηστη συγκρότηση, πρέπει να υπογράψετε μια συγκρότηση με ισχυρό όνομα και εγκατάσταση της συγκρότησης στο το καθολικό Cache συγκροτήσεων (GAC) στον υπολογιστή προορισμού.

Για περισσότερες πληροφορίες σχετικά με την υπογραφή της συγκρότησης με ισχυρό όνομα και εγκατάσταση της συγκρότησης στο καθολικό Cache συγκροτήσεων (GAC), επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:Θα πρέπει να χρησιμοποιείτε και τα δύο το /TLB: διακόπτη και το /Codebase Μετάβαση κατά την καταχώρηση της συγκρότησης. Το /TLB: διακόπτης δημιουργεί και καταχωρεί μια βιβλιοθήκη τύπων, και ο διακόπτης /Codebase καταχωρεί τη θέση της συνέλευσης διαχείρισης στο μητρώο των Windows. Εάν δεν χρησιμοποιήσετε το διακόπτη /Codebase και η συγκρότηση δεν έχει εγκατασταθεί στο καθολικό Cache συγκροτήσεων (GAC), πρέπει να τοποθετήσετε ένα αντίγραφο της συγκρότησης στο φάκελο του κάθε εφαρμογή-πελάτης COM (EXE) έτσι ώστε η συγκρότηση μπορούν να εντοπιστούν από το κοινό χρόνο εκτέλεσης γλώσσας (CLR).

Για να δημιουργήσετε και να καταχωρήσετε μια βιβλιοθήκη τύπων και καταχωρήσετε τη θέση του συγκροτήματος διαχειριζόμενη, πληκτρολογήστε την ακόλουθη εντολή στη γραμμή εντολών:
/ TLB AssemblyName.dll regasm: FileName.tlb / codebase

Δημιουργία μιας συγκρότησης δυνατή η κλήση COM σε Visual Basic .NET

  1. Ξεκινήστε το Visual Studio .NET ή Visual Studio 2005.
  2. Στο μενού " αρχείο ", μεταβείτε στην επιλογή
    Δημιουργίακαι, στη συνέχεια, κάντε κλικ στο έργο.
  3. Στην περιοχή Τύπους έργων, κάντε κλικ στο κουμπί Έργα της Visual Basic.

    Σημείωση Στη Visual Studio2005, κάντε κλικ στο κουμπί Visual Basic στην περιοχή
    Τύπους έργων.
  4. Στην περιοχή πρότυπα, κάντε κλικ στο κουμπί Βιβλιοθήκη κλάσεων.
  5. Ονομάστε το έργο TestProj και στη συνέχεια κάντε κλικ στο κουμπί
    OK.

    Από προεπιλογή, δημιουργείται Class1.
  6. Στο μενού Προβολή , κάντε κλικ στην επιλογή Εξερεύνηση λύσεων.
  7. Κάντε δεξιό κλικ Class1.vb, και στη συνέχεια κάντε κλικ στο κουμπί
    Διαγραφή. Κάντε κλικ στο κουμπί OK για να επιβεβαιώσετε τη διαγραφή του αρχείου προέλευσης Class1.vb.
  8. Στο μενού ' έργο ', κάντε κλικ στο κουμπί Προσθήκη κλάσης.
  9. Στην περιοχή πρότυπα, κάντε κλικ στην επιλογή Κλάσης COM.
  10. Το όνομα της κλάσης COMClass1.vb και στη συνέχεια κάντε κλικ στο κουμπί
    Άνοιγμα

    COMClass1 δημιουργείται με τον παρακάτω κώδικα.
    <ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)> _Public Class ComClass1

    #Region "COM GUIDs"
    ' These GUIDs provide the COM identity for this class
    ' and its COM interfaces. If you change them, existing
    ' clients will no longer be able to access the class.
    Public Const ClassId As String = "6DB79AF2-F661-44AC-8458-62B06BFDD9E4"
    Public Const InterfaceId As String = "EDED909C-9271-4670-BA32-109AE917B1D7"
    Public Const EventsId As String = "17C731B8-CE61-4B5F-B114-10F3E46153AC"
    #End Region

    ' A creatable COM class must have a Public Sub New()
    ' without parameters. Otherwise, the class will not be
    ' registered in the COM registry and cannot be created
    ' through CreateObject.
    Public Sub New()
    MyBase.New()
    End Sub

    End Class
  11. Προσθέστε την ακόλουθη συνάρτηση COMClass1.
       Public Function myFunction() As Integer      Return 100
    End Function
  12. Στην Εξερεύνηση λύσεων, κάντε δεξιό κλικ
    Όνομα του έργουκαι, στη συνέχεια, κάντε κλικ στο κουμπί
    Ιδιότητες.
  13. Στην περιοχή Ιδιότητες παραμέτρων, κάντε κλικ στο κουμπί
    Δόμηση.
  14. Βεβαιωθείτε ότι είναι επιλεγμένο το πλαίσιο ελέγχου καταχώρησης για διαλειτουργικότητα COMκαι, στη συνέχεια, κάντε κλικ στο κουμπί OK.
  15. Από το μενού Δημιουργία , κάντε κλικ στο κουμπί Δημιουργία λύσης για να δημιουργήσετε το έργο.
  16. Ξεκινήστε το Visual Basic 6.0.
  17. Στο μενού " αρχείο ", κάντε κλικ στο κουμπί Νέο έργοκαι, στη συνέχεια, κάντε κλικ στην επιλογή Τυπική EXE με το
    Παράθυρο διαλόγου Δημιουργία έργου .

    Από προεπιλογή, δημιουργείται μια φόρμα που ονομάζεται Form1.
  18. Στο μενού ' έργο ', κάντε κλικ στο κουμπί
    Αναφορές.
  19. Στη λίστα Διαθέσιμες αναφορές , κάντε διπλό κλικ για να επιλέξετε TestProjκαι, στη συνέχεια, κάντε κλικ στο κουμπί
    OK.
  20. Προσθέστε ένα κουμπί εντολής στη φόρμα.
  21. Κάντε διπλό κλικ στο εντολή1 για να ανοίξετε το παράθυρο "κώδικας".
  22. Προσθέστε τον ακόλουθο κώδικα στο συμβάν Command1_Click .
    Dim myObject As TestProj.COMClass1Set myObject = New TestProj.COMClass1
    MsgBox myObject.myFunction
  23. Στο μενού " Εκτέλεση ", κάντε κλικ στο κουμπί
    Έναρξη.
  24. Κάντε κλικ στο κουμπί εντολής.

    Θα λάβετε ένα μήνυμα που εμφανίζει 100.

Αναφορές

Για περισσότερες πληροφορίες, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:
Διαλειτουργικότητα με μη διαχειριζόμενο κώδικα
http://msdn2.microsoft.com/en-us/library/sd10k43k(vs.71).aspx
Ιδιότητες

Αναγνωριστικό άρθρου: 817248 - Τελευταία αναθεώρηση: 17 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια