Bonjour,
Ce n?est pas vraiment un codes-source, mais surtout une astuce ! Si vous demander le nom du fichier a sauvegardé à l?utilisateur de votre programme celui-ci peut ne pas être correcte. C'est-à-dire qu?il peut contenir un code non valide pour les noms windows.
En fait cette astuce est simple et test simplement si un caractère non valide est dans la chaine.
Source / Exemple :
' ****************************************************************************
' ****************************************************************************
' ****************************************************************************
' ****************************************************************************
' +--------------------------------------------------------------------------+
' | DONNE LA VALIDITE DU NOM POUR LA SAUVEGARDE D'UN FICHIER METHODE N°1 |
' +--------------------------------------------------------------------------+
Private Function GetIsValidName(ByVal strFileName As String) As Boolean
' DECLARATION DES VARIABLES.
Dim lngI As Long
' DONNE LA VALIDITE DU NOM.
lngI = lngI + InStr(&H1, strFileName, "\") ' CARACTERE '\'.
lngI = lngI + InStr(&H1, strFileName, "/") ' CARACTERE '/'.
lngI = lngI + InStr(&H1, strFileName, ":") ' CARACTERE ':'.
lngI = lngI + InStr(&H1, strFileName, "*") ' CARACTERE '*'.
lngI = lngI + InStr(&H1, strFileName, "?") ' CARACTERE '?'.
lngI = lngI + InStr(&H1, strFileName, "<") ' CARACTERE '<'.
lngI = lngI + InStr(&H1, strFileName, ">") ' CARACTERE '>'.
lngI = lngI + InStr(&H1, strFileName, "|") ' CARACTERE '|'.
lngI = lngI + InStr(&H1, strFileName, Chr$(&H22)) ' CARACTERE '"'.
If lngI = &H0 Then
GetIsValidName = True
Else
GetIsValidName = False
End If
End Function
' +--------------------------------------------------------------------------+
' | DONNE LA VALIDITE DU NOM POUR LA SAUVEGARDE D'UN FICHIER METHODE N°2 |
' +--------------------------------------------------------------------------+
Private Function GetIsValidName(ByVal strFileName As String) As Boolean
' DECLARATION DES VARIABLES.
Dim lngI As Long
Const strInterdit As String = "\/:*?""<>|"
' RECHERCHE DES CARACTERES INTERDIT.
For lngI = 1 To Len(strInterdit)
If InStr(strFileName, Mid$(strInterdit, lngI, &H1)) Then
GetIsValidName = True
Exit For
End If
Next lngI
GetIsValidName = Not GetIsValidName
End Function
' ****************************************************************************
' ****************************************************************************
' ****************************************************************************
' ****************************************************************************
' +--------------------------------------------------------------------------+
' | EXEMPLE D'UTILISATION DE LA FONCTION "setIsValidName". |
' +--------------------------------------------------------------------------+
If Not GetIsValidName("TestFile*.exe") Then
MsgBox ("NOM DU FICHIER INVALIDE")
End If
Conclusion :
Ceci n?est juste qu?une petite astuce, qui peut avoir son utilité en fonction de ce que vous faites.
Bonne programmation a tous,
[Gally Home Corp]
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.