Funzione CompatibilityMode()

La funzione CompatibilityMode() controlla o richiede informazioni sul modo in fase di esecuzione (runtime). Ha effetto su tutto il codice eseguito dopo l'impostazione o la reimpostazione del modo della fase di esecuzione.

warning

Utilizzate questa funzione con cautela, limitatela, per esempio, alla conversione di documenti.


Sintassi:


      CompatibilityMode(Optional Enable As Boolean) As Boolean
    

Valore restituito:

La funzione CompatibilityMode restituisce sempre il modo attivo dopo la sua esecuzione. Quindi se chiamata con argomento, restituisce il nuovo modo, se chiamata senza argomento, restituisce il modo attivo senza modificarlo.

Parametri:

Enable: attiva o disattiva il nuovo modo di compatibilità nel caso in cui l'argomento sia presente.

note

La funzione CompatibilityMode è collegata all'opzione VBASupport 1, che in tal caso restituisce sempre True. Non è invece collegata alla direttiva del compilatore Option Compatible.


Questa funzione può interessare o aiutare nelle situazioni sotto specificate:

Esempio:

Specificata una directory NON vuota in file:///home/me/Test


      Sub RemoveDir
      

MsgBox CompatibilityMode() ' False

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

MsgBox CompatibilityMode ' False

End Sub

Con CompatibilityMode( True ) il programma genera un errore, altrimenti la directory Test viene eliminata con il suo contenuto.

Esempio:

Modifica del comportamento Dir


    Sub VBADirCommand
        CompatibilityMode( Enable := True ) ' Mostra anche file normali
        Entry$ = Dir( "file:///home/me/Tmp/*.*", 16 )
        Total$ = ""
        While Entry$ <> ""
            Total$ = Total$ + Entry$ + Chr$(13)
            Entry$ = Dir
        Wend
        MsgBox Total$
        CompatibilityMode Enable := False ' Mostra solo le directory
    End Sub