Περιεχόμενα
Δείκτης 🔎︎

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

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

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

Το Option Compatible ενεργοποιεί τη συμβατότητα VBA σε επίπεδο αρθρώματος για τον διερμηνευτή Basic του LibreOffice.

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

- Δημιουργία απαριθμήσεων με Πρόταση Enum

- Εκτέλεση εντολής RmDir σε κατάσταση VBA. Σε VBA αφαιρούνται μόνο κενοί κατάλογοι με RmDir ενώ η Basic του LibreOffice αφαιρεί κατάλογο αναδρομικά.

- Αλλαγή συμπεριφοράς της εντολής Basic Dir. Η σημαία καταλόγου (16) για την εντολή Dir σημαίνει ότι επιστρέφονται μόνο κατάλογοι στο LibreOffice Basic, ενώ επιστρέφονται στη VBA κανονικά αρχεία και κατάλογοι.

Η συνάρτηση CompatibilityMode() μπορεί να είναι απαραίτητη κατά την επαναταξινόμηση σε καταστάσεις μεταγλωττιστή Option Compatible ή Option VBASupport.

### Σύνταξη:

CompatibilityMode(True | False)

### Παράδειγμα:

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

            Sub RemoveDir
                CompatibilityMode( true )
                RmDir( "file:///home/me/Test" )
            End Sub

Με το CompatibilityMode( true ) το πρόγραμμα καταλήγει σε σφάλμα, αλλιώς ο κατάλογος Test και όλα τα περιεχόμενά του διαγράφονται.

### Παράδειγμα:

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

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

Σχετικά θέματα

Πρόταση συμβατής επιλογής

Δείτε το Ταυτοποίηση λειτουργικού συστήματος και Λήψη πληροφοριών συνεδρίας για απλά παραδείγματα Option Compatible, ή το Access2Base shared Basic library για άλλα παραδείγματα κλάσης που χρησιμοποιούν την κατάσταση μεταγλωττιστή Option Compatible.

Πρόταση Rem

Τροποποίηση της περιοχής μεταβλητών στο Χρήση διαδικασιών και συναρτήσεων με τη συνάρτηση CompatibilityMode().

Πρόταση Option Base

Πρόταση Option Explicit

Πρόταση Option VBASupport

Πρόταση επιλογής ClassModule