Συνάρτηση CompatibilityMode()

Η συνάρτηση CompatibilityMode() ελέγχει ή ερωτά την κατάσταση χρόνου εκτέλεσης. Επηρεάζει όλο τον κώδικα που εκτελείται μετά τη ρύθμιση ή την επαναφορά της λειτουργίας χρόνου εκτέλεσης.

warning

Χρησιμοποιήστε αυτό το γνώρισμα με προσοχή, περιορίστε το στη μετατροπή κειμένου, παραδείγματος χάρη.


Σύνταξη:

CompatibilityMode(Προαιρετικό Enable As Boolean) As Boolean

Επιστρεφόμενη τιμή:

Η συνάρτηση CompatibilityMode επιστρέφει πάντα τη λειτουργία που είναι ενεργή μετά την εκτέλεσή της. Δηλαδή, εάν καλείται με όρισμα, επιστρέφει τη νέα λειτουργία. Εάν καλείται χωρίς όρισμα, επιστρέφει την ενεργή λειτουργία χωρίς να την τροποποιήσει.

Παράμετροι:

Enable (Ενεργοποίηση): Ορίζει ή καταργεί τη νέα κατάσταση συμβατότητας όταν υπάρχει το όρισμα.

note

Η λειτουργία CompatibilityMode σχετίζεται με τη Επιλογή VBASupport 1, οπότε επιστρέφει πάντα True. Δεν σχετίζεται με την οδηγία μεταγλωττιστή Option Compatible.


Αυτή η συνάρτηση μπορεί να επηρεάσει ή να βοηθήσει στις παρακάτω καταστάσεις:

Παράδειγμα:

Με δεδομένο κενό κατάλογο NOT στο file:///home/me/Test

Sub RemoveDir
    MsgBox CompatibilityMode() ' False

    CompatibilityMode( True )
    RmDir( "file:///home/me/Test" )
    CompatibilityMode False

    MsgBox CompatibilityMode ' False
End Sub

Με το CompatibilityMode( True ) το πρόγραμμα δημιουργεί ένα σφάλμα, διαφορετικά ο κατάλογος Test και όλο το περιεχόμενό του διαγράφονται.

Παράδειγμα:

Τροποποίηση της συμπεριφοράς του Dir

Sub VBADirCommand
    CompatibilityMode( Enable := True ) ' Εμφανίζει επίσης κανονικά αρχεία
    Entry$ = Dir( "file:///home/me/Tmp/*.*", 16 )
    Total$ = ""
    While Entry$ <> ""
        Total$ = Total$ + Entry$ + Chr$(13)
        Entry$ = Dir
    Wend
    MsgBox Total$
    CompatibilityMode Enable := False ' Εμφανίζει μόνο καταλόγους
End Sub

Παρακαλούμε, υποστηρίξτε μας!