Función CompatibilityMode()

CompatibilityMode() function controls or queries runtime mode. It affects all code executed after setting or resetting the runtime mode.

warning

Utilice esta función con cautela; limítela a la conversión de documentos, por ejemplo.


Sintaxis:

CompatibilityMode(Optional Enable As Boolean) As Boolean

Valor de retorno:

CompatibilityMode function always returns the mode that is active after its execution. That is, if called with an argument, it returns the new mode; if called without an argument, it returns the active mode without modifying it.

Parámetros:

Enable: Sets or unsets new compatibility mode when the argument is present.

note

CompatibilityMode function relates to Option VBASupport 1, in which case it always returns True. It is unrelated to Option Compatible compiler directive.


Esta función puede coadyuvar o perjudicar las situaciones siguientes:

Ejemplo:

Dado un directorio NO vacío en file:///home/me/Test

Sub RemoveDir
    MsgBox CompatibilityMode() ' False

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

    MsgBox CompatibilityMode ' False
End Sub

With CompatibilityMode( True ) the program raises an error, otherwise the Test directory and all its content is deleted.

Ejemplo:

Modificar el comportamiento de Dir

Sub VBADirCommand
    CompatibilityMode( Enable := True )   ' Muestra también los archivos normales
    Entry$ = Dir( "file:///home/me/Tmp/*.*", 16 )
    Total$ = ""
    While Entry$ <> ""
        Total$ = Total$ + Entry$ + Chr$(13)
        Entry$ = Dir
    Wend
    MsgBox Total$
    CompatibilityMode Enable := False ' Muestra directorios solamente
End Sub

¡Necesitamos su ayuda!