Di seguito riporto il codice definitivo, che sembra funzionare, nel caso che a qualcuno dovesse servire:
codice:
Private Sub Command1_Click()
Dim MyDir As Long
Dim MyFile As Long
Dim FileWayCopy As String
' Controlla l'esistenza della Directory da cui copiare il file:
If Dir("D:\TestXX", vbDirectory) <> "" Then
' Legge il valore dell'attributo della directory:
MyDir = GetAttr("D:\TestXX")
MsgBox "La Directory esiste. " & "Valore attribuito " & MyDir
' Controlla l'esistenza del file da copiare:
If Dir("D:\TestXX\ProvaYY.bmp") <> "" Then
FileWayCopy = "D:\TestXX\ProvaYY.bmp"
' Legge il valore dell'attributo della directory e del file:
MyFile = GetAttr("D:\TestXX\ProvaYY.bmp")
MsgBox "Il file esiste. " & "Valore attribuito " & MyFile
If MyFile > 32 Or MyFile = 1 Then
' Toglie l'attributo di sola lettura:
SetAttr FileWayCopy, GetAttr(FileWayCopy) And &HFFFE
' Legge il nuovo valore dell'attributo della directory e del file:
MyFile = GetAttr("D:\TestXX\ProvaYY.bmp")
MsgBox "Il file esiste. " & "Valore attribuito " & MyFile
End If
Else: MsgBox "Il file non esiste."
End If
Else: MsgBox "La Directory non esiste."
End If
End Sub