J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
>La fonction "ChangerDateCaractere" ne retourne pas une valeur pour tous
Voici cette fonction....
Private Function ChangerCaractereDate(ByVal strCodeDivers As String) As
String
Dim strDateCarac As String = String.Empty
Dim intCompteur As Integer = 0
Try
Do While intCompteur < 8
Select Case strCodeDivers.Substring(intCompteur, 1)
Case "a"
strDateCarac = strDateCarac & "0"
Case "b"
strDateCarac = strDateCarac & "1"
Case "c"
strDateCarac = strDateCarac & "2"
End Select
intCompteur += 1
Loop
Return strDateCarac
Catch objException As Exception
End Try
End Function
Quel est le problème de RETURN ????? par rapport à l'avertissement ????
Merci de vos réponses!
J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
>La fonction "ChangerDateCaractere" ne retourne pas une valeur pour tous
Voici cette fonction....
Private Function ChangerCaractereDate(ByVal strCodeDivers As String) As
String
Dim strDateCarac As String = String.Empty
Dim intCompteur As Integer = 0
Try
Do While intCompteur < 8
Select Case strCodeDivers.Substring(intCompteur, 1)
Case "a"
strDateCarac = strDateCarac & "0"
Case "b"
strDateCarac = strDateCarac & "1"
Case "c"
strDateCarac = strDateCarac & "2"
End Select
intCompteur += 1
Loop
Return strDateCarac
Catch objException As Exception
End Try
End Function
Quel est le problème de RETURN ????? par rapport à l'avertissement ????
Merci de vos réponses!
J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
>La fonction "ChangerDateCaractere" ne retourne pas une valeur pour tous
Voici cette fonction....
Private Function ChangerCaractereDate(ByVal strCodeDivers As String) As
String
Dim strDateCarac As String = String.Empty
Dim intCompteur As Integer = 0
Try
Do While intCompteur < 8
Select Case strCodeDivers.Substring(intCompteur, 1)
Case "a"
strDateCarac = strDateCarac & "0"
Case "b"
strDateCarac = strDateCarac & "1"
Case "c"
strDateCarac = strDateCarac & "2"
End Select
intCompteur += 1
Loop
Return strDateCarac
Catch objException As Exception
End Try
End Function
Quel est le problème de RETURN ????? par rapport à l'avertissement ????
Merci de vos réponses!
J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
tous les chemins de code. Une exception de référence Null peut se
produire au moment de l'exécution lorsque le résultat est utilisé>
Voici cette fonction....
Private Function ChangerCaractereDate(ByVal strCodeDivers As
String) As String
Dim strDateCarac As String = String.Empty
Dim intCompteur As Integer = 0
Try
Do While intCompteur < 8
Select Case strCodeDivers.Substring(intCompteur, 1)
Case "a"
strDateCarac = strDateCarac & "0"
Case "b"
strDateCarac = strDateCarac & "1"
Case "c"
strDateCarac = strDateCarac & "2"
End Select
intCompteur += 1
Loop
Return strDateCarac
Catch objException As Exception
End Try
End Function
Quel est le problème de RETURN ????? par rapport à l'avertissement
????
J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
tous les chemins de code. Une exception de référence Null peut se
produire au moment de l'exécution lorsque le résultat est utilisé>
Voici cette fonction....
Private Function ChangerCaractereDate(ByVal strCodeDivers As
String) As String
Dim strDateCarac As String = String.Empty
Dim intCompteur As Integer = 0
Try
Do While intCompteur < 8
Select Case strCodeDivers.Substring(intCompteur, 1)
Case "a"
strDateCarac = strDateCarac & "0"
Case "b"
strDateCarac = strDateCarac & "1"
Case "c"
strDateCarac = strDateCarac & "2"
End Select
intCompteur += 1
Loop
Return strDateCarac
Catch objException As Exception
End Try
End Function
Quel est le problème de RETURN ????? par rapport à l'avertissement
????
J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
tous les chemins de code. Une exception de référence Null peut se
produire au moment de l'exécution lorsque le résultat est utilisé>
Voici cette fonction....
Private Function ChangerCaractereDate(ByVal strCodeDivers As
String) As String
Dim strDateCarac As String = String.Empty
Dim intCompteur As Integer = 0
Try
Do While intCompteur < 8
Select Case strCodeDivers.Substring(intCompteur, 1)
Case "a"
strDateCarac = strDateCarac & "0"
Case "b"
strDateCarac = strDateCarac & "1"
Case "c"
strDateCarac = strDateCarac & "2"
End Select
intCompteur += 1
Loop
Return strDateCarac
Catch objException As Exception
End Try
End Function
Quel est le problème de RETURN ????? par rapport à l'avertissement
????
Dans : news:,
Annie L. disait :
> J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
>
>> La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
>> tous les chemins de code. Une exception de référence Null peut se
>> produire au moment de l'exécution lorsque le résultat est utilisé>
>
> Voici cette fonction....
>
> Private Function ChangerCaractereDate(ByVal strCodeDivers As
> String) As String
> Dim strDateCarac As String = String.Empty
> Dim intCompteur As Integer = 0
> Try
> Do While intCompteur < 8
> Select Case strCodeDivers.Substring(intCompteur, 1)
> Case "a"
> strDateCarac = strDateCarac & "0"
> Case "b"
> strDateCarac = strDateCarac & "1"
> Case "c"
> strDateCarac = strDateCarac & "2"
> End Select
> intCompteur += 1
> Loop
> Return strDateCarac
> Catch objException As Exception
> End Try
> End Function
>
>
> Quel est le problème de RETURN ????? par rapport à l'avertissement
> ????
Place ton Return après le End Try.
Le problème c'est qu'en cas d'erreur, ton code ne «passe» sur aucun
Return.
Ceci étant : pourquoi un Try Catch sur cette boucle ?
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:53889EB8-5F33-480C-9AF8-76EDBDA98D18@microsoft.com,
Annie L. disait :
> J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
>
>> La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
>> tous les chemins de code. Une exception de référence Null peut se
>> produire au moment de l'exécution lorsque le résultat est utilisé>
>
> Voici cette fonction....
>
> Private Function ChangerCaractereDate(ByVal strCodeDivers As
> String) As String
> Dim strDateCarac As String = String.Empty
> Dim intCompteur As Integer = 0
> Try
> Do While intCompteur < 8
> Select Case strCodeDivers.Substring(intCompteur, 1)
> Case "a"
> strDateCarac = strDateCarac & "0"
> Case "b"
> strDateCarac = strDateCarac & "1"
> Case "c"
> strDateCarac = strDateCarac & "2"
> End Select
> intCompteur += 1
> Loop
> Return strDateCarac
> Catch objException As Exception
> End Try
> End Function
>
>
> Quel est le problème de RETURN ????? par rapport à l'avertissement
> ????
Place ton Return après le End Try.
Le problème c'est qu'en cas d'erreur, ton code ne «passe» sur aucun
Return.
Ceci étant : pourquoi un Try Catch sur cette boucle ?
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:,
Annie L. disait :
> J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
>
>> La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
>> tous les chemins de code. Une exception de référence Null peut se
>> produire au moment de l'exécution lorsque le résultat est utilisé>
>
> Voici cette fonction....
>
> Private Function ChangerCaractereDate(ByVal strCodeDivers As
> String) As String
> Dim strDateCarac As String = String.Empty
> Dim intCompteur As Integer = 0
> Try
> Do While intCompteur < 8
> Select Case strCodeDivers.Substring(intCompteur, 1)
> Case "a"
> strDateCarac = strDateCarac & "0"
> Case "b"
> strDateCarac = strDateCarac & "1"
> Case "c"
> strDateCarac = strDateCarac & "2"
> End Select
> intCompteur += 1
> Loop
> Return strDateCarac
> Catch objException As Exception
> End Try
> End Function
>
>
> Quel est le problème de RETURN ????? par rapport à l'avertissement
> ????
Place ton Return après le End Try.
Le problème c'est qu'en cas d'erreur, ton code ne «passe» sur aucun
Return.
Ceci étant : pourquoi un Try Catch sur cette boucle ?
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais si
je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un moyen de
le placer au travers du code! Peut-être le message avant a la solution :
ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
CATCH!!!
On ne doit pas s'en servir trop souvent ou seulement à des endroits
stratégiques??
Merci de vos réponses!
"Fred" wrote:
> Dans : news:,
> Annie L. disait :
> > J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
> >
> >> La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
> >> tous les chemins de code. Une exception de référence Null peut se
> >> produire au moment de l'exécution lorsque le résultat est utilisé>
> >
> > Voici cette fonction....
> >
> > Private Function ChangerCaractereDate(ByVal strCodeDivers As
> > String) As String
> > Dim strDateCarac As String = String.Empty
> > Dim intCompteur As Integer = 0
> > Try
> > Do While intCompteur < 8
> > Select Case strCodeDivers.Substring(intCompteur, 1)
> > Case "a"
> > strDateCarac = strDateCarac & "0"
> > Case "b"
> > strDateCarac = strDateCarac & "1"
> > Case "c"
> > strDateCarac = strDateCarac & "2"
> > End Select
> > intCompteur += 1
> > Loop
> > Return strDateCarac
> > Catch objException As Exception
> > End Try
> > End Function
> >
> >
> > Quel est le problème de RETURN ????? par rapport à l'avertissement
> > ????
>
> Place ton Return après le End Try.
> Le problème c'est qu'en cas d'erreur, ton code ne «passe» sur aucun
> Return.
> Ceci étant : pourquoi un Try Catch sur cette boucle ?
>
> --
> Fred
> http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
>
>
J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais si
je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un moyen de
le placer au travers du code! Peut-être le message avant a la solution :
ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
CATCH!!!
On ne doit pas s'en servir trop souvent ou seulement à des endroits
stratégiques??
Merci de vos réponses!
"Fred" wrote:
> Dans : news:53889EB8-5F33-480C-9AF8-76EDBDA98D18@microsoft.com,
> Annie L. disait :
> > J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
> >
> >> La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
> >> tous les chemins de code. Une exception de référence Null peut se
> >> produire au moment de l'exécution lorsque le résultat est utilisé>
> >
> > Voici cette fonction....
> >
> > Private Function ChangerCaractereDate(ByVal strCodeDivers As
> > String) As String
> > Dim strDateCarac As String = String.Empty
> > Dim intCompteur As Integer = 0
> > Try
> > Do While intCompteur < 8
> > Select Case strCodeDivers.Substring(intCompteur, 1)
> > Case "a"
> > strDateCarac = strDateCarac & "0"
> > Case "b"
> > strDateCarac = strDateCarac & "1"
> > Case "c"
> > strDateCarac = strDateCarac & "2"
> > End Select
> > intCompteur += 1
> > Loop
> > Return strDateCarac
> > Catch objException As Exception
> > End Try
> > End Function
> >
> >
> > Quel est le problème de RETURN ????? par rapport à l'avertissement
> > ????
>
> Place ton Return après le End Try.
> Le problème c'est qu'en cas d'erreur, ton code ne «passe» sur aucun
> Return.
> Ceci étant : pourquoi un Try Catch sur cette boucle ?
>
> --
> Fred
> http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
>
>
J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais si
je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un moyen de
le placer au travers du code! Peut-être le message avant a la solution :
ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
CATCH!!!
On ne doit pas s'en servir trop souvent ou seulement à des endroits
stratégiques??
Merci de vos réponses!
"Fred" wrote:
> Dans : news:,
> Annie L. disait :
> > J'ai un "avertissement" dans VB 2005 qui se lit comme ceci :
> >
> >> La fonction "ChangerDateCaractere" ne retourne pas une valeur pour
> >> tous les chemins de code. Une exception de référence Null peut se
> >> produire au moment de l'exécution lorsque le résultat est utilisé>
> >
> > Voici cette fonction....
> >
> > Private Function ChangerCaractereDate(ByVal strCodeDivers As
> > String) As String
> > Dim strDateCarac As String = String.Empty
> > Dim intCompteur As Integer = 0
> > Try
> > Do While intCompteur < 8
> > Select Case strCodeDivers.Substring(intCompteur, 1)
> > Case "a"
> > strDateCarac = strDateCarac & "0"
> > Case "b"
> > strDateCarac = strDateCarac & "1"
> > Case "c"
> > strDateCarac = strDateCarac & "2"
> > End Select
> > intCompteur += 1
> > Loop
> > Return strDateCarac
> > Catch objException As Exception
> > End Try
> > End Function
> >
> >
> > Quel est le problème de RETURN ????? par rapport à l'avertissement
> > ????
>
> Place ton Return après le End Try.
> Le problème c'est qu'en cas d'erreur, ton code ne «passe» sur aucun
> Return.
> Ceci étant : pourquoi un Try Catch sur cette boucle ?
>
> --
> Fred
> http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
>
>
J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais
si
je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un
moyen de
le placer au travers du code! Peut-être le message avant a la solution :
ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
CATCH!!!
On ne doit pas s'en servir trop souvent ou seulement à des endroits
stratégiques??
Merci de vos réponses!
J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais
si
je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un
moyen de
le placer au travers du code! Peut-être le message avant a la solution :
ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
CATCH!!!
On ne doit pas s'en servir trop souvent ou seulement à des endroits
stratégiques??
Merci de vos réponses!
J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais
si
je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un
moyen de
le placer au travers du code! Peut-être le message avant a la solution :
ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
CATCH!!!
On ne doit pas s'en servir trop souvent ou seulement à des endroits
stratégiques??
Merci de vos réponses!
Le Thu, 29 Nov 2007 14:45:01 +0100, Annie L.
a écrit:
> J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais
> si
> je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un
> moyen de
> le placer au travers du code! Peut-être le message avant a la solution :
> ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
>
> Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
>
> Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
> CATCH!!!
> On ne doit pas s'en servir trop souvent ou seulement à des endroits
> stratégiques??
>
>
> Merci de vos réponses!
La levée d'une exception signale le plus souvent une erreur de
programmation et indique que votre application devient instable (c'est à
dire que si vous continuer l'execution de votre code vous aurez des
pépins...)
On traite les exceptions uniquement :
- lorsque le code devient critique et en cas de pépin il faut faire
quelque chose (par exemple libération d'une ressource en cas de problème)
- lorsque le vous voulez en cas de problème "tuer un code" qui n'est plus
bon à executer (par exemple fermer une fenêtre car il y a un bogue)
- lorsque vous savez que vous pouvez prendre le contrôle total de
l'exception (par exemple un echec à la connexion à une base de donnée, car
le Login et/ou MP est incorrect)
Quand vous faites :
Try
.....
.....
Catch
.....
.....
End Try
Après le End Try, il faut s'assurer que votre application est stable
(c'est à dire qu'il y a toujours une bonne intégrité des
variables,...etc). Sinon il faut mieux ne pas traiter l'exception et
laisser les méthodes beaucoup "plus hautes" se charger de l'exception, et
au pire si aucun ne gère l'exception tuer votre application...). C'est le
prix à payer pour :
- au final avoir soit un programme qui fonctionne et qui produit des
résultats correct
- ou qui ne fonctionne pas et donc ne produit aucun résultat
au lieu d'avoir un programme "qui fonctionne" et qui produit n'importe
quoi comme résultats...
Dans votre cas, votre fonction n'est en aucun cas "critique" et ne
nécessite pas de traiter d'exception...
Normalement dans tout programme on traite très peu d'exception sauf au
niveau global pour générer un "rapport d'incident" et l'envoyer par e-mail
au ST du logiciel...
Il faut aussi éviter d'utiliser (question de performances) la gestion des
exceptions comme ceci :
Try
File.Open("C:.....MonFichier.txt")
Catch FileNotFound e
MsgBox "Impossible de trouver le fichier"
End Try
Préférez ce code :
If File.Exists("C:.....MonFichier.txt") Then
File.Open("C:.....MonFichier.txt")
Else
MsgBox "Impossible de trouver le fichier"
End If
Cordialement
--
Gilles TOURREAU
S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Le Thu, 29 Nov 2007 14:45:01 +0100, Annie L.
<AnnieL@discussions.microsoft.com> a écrit:
> J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais
> si
> je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un
> moyen de
> le placer au travers du code! Peut-être le message avant a la solution :
> ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
>
> Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
>
> Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
> CATCH!!!
> On ne doit pas s'en servir trop souvent ou seulement à des endroits
> stratégiques??
>
>
> Merci de vos réponses!
La levée d'une exception signale le plus souvent une erreur de
programmation et indique que votre application devient instable (c'est à
dire que si vous continuer l'execution de votre code vous aurez des
pépins...)
On traite les exceptions uniquement :
- lorsque le code devient critique et en cas de pépin il faut faire
quelque chose (par exemple libération d'une ressource en cas de problème)
- lorsque le vous voulez en cas de problème "tuer un code" qui n'est plus
bon à executer (par exemple fermer une fenêtre car il y a un bogue)
- lorsque vous savez que vous pouvez prendre le contrôle total de
l'exception (par exemple un echec à la connexion à une base de donnée, car
le Login et/ou MP est incorrect)
Quand vous faites :
Try
.....
.....
Catch
.....
.....
End Try
Après le End Try, il faut s'assurer que votre application est stable
(c'est à dire qu'il y a toujours une bonne intégrité des
variables,...etc). Sinon il faut mieux ne pas traiter l'exception et
laisser les méthodes beaucoup "plus hautes" se charger de l'exception, et
au pire si aucun ne gère l'exception tuer votre application...). C'est le
prix à payer pour :
- au final avoir soit un programme qui fonctionne et qui produit des
résultats correct
- ou qui ne fonctionne pas et donc ne produit aucun résultat
au lieu d'avoir un programme "qui fonctionne" et qui produit n'importe
quoi comme résultats...
Dans votre cas, votre fonction n'est en aucun cas "critique" et ne
nécessite pas de traiter d'exception...
Normalement dans tout programme on traite très peu d'exception sauf au
niveau global pour générer un "rapport d'incident" et l'envoyer par e-mail
au ST du logiciel...
Il faut aussi éviter d'utiliser (question de performances) la gestion des
exceptions comme ceci :
Try
File.Open("C:.....MonFichier.txt")
Catch FileNotFound e
MsgBox "Impossible de trouver le fichier"
End Try
Préférez ce code :
If File.Exists("C:.....MonFichier.txt") Then
File.Open("C:.....MonFichier.txt")
Else
MsgBox "Impossible de trouver le fichier"
End If
Cordialement
--
Gilles TOURREAU
gilles.tourreau@pos.fr
S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Le Thu, 29 Nov 2007 14:45:01 +0100, Annie L.
a écrit:
> J'ai compris qu'il faut placer "Return" juste avant "End Function". Mais
> si
> je veux le placer ailleurs, il m'envoi un avertissement! Y-a-t-il un
> moyen de
> le placer au travers du code! Peut-être le message avant a la solution :
> ChangerDatecaractere = strdateCarac !!!! je vais faire des tests!!
>
> Fred a dit : Ceci étant : pourquoi un Try Catch sur cette boucle ?
>
> Intéressant!!!! J'aimerais avoir plus d'explications concernant le TRY
> CATCH!!!
> On ne doit pas s'en servir trop souvent ou seulement à des endroits
> stratégiques??
>
>
> Merci de vos réponses!
La levée d'une exception signale le plus souvent une erreur de
programmation et indique que votre application devient instable (c'est à
dire que si vous continuer l'execution de votre code vous aurez des
pépins...)
On traite les exceptions uniquement :
- lorsque le code devient critique et en cas de pépin il faut faire
quelque chose (par exemple libération d'une ressource en cas de problème)
- lorsque le vous voulez en cas de problème "tuer un code" qui n'est plus
bon à executer (par exemple fermer une fenêtre car il y a un bogue)
- lorsque vous savez que vous pouvez prendre le contrôle total de
l'exception (par exemple un echec à la connexion à une base de donnée, car
le Login et/ou MP est incorrect)
Quand vous faites :
Try
.....
.....
Catch
.....
.....
End Try
Après le End Try, il faut s'assurer que votre application est stable
(c'est à dire qu'il y a toujours une bonne intégrité des
variables,...etc). Sinon il faut mieux ne pas traiter l'exception et
laisser les méthodes beaucoup "plus hautes" se charger de l'exception, et
au pire si aucun ne gère l'exception tuer votre application...). C'est le
prix à payer pour :
- au final avoir soit un programme qui fonctionne et qui produit des
résultats correct
- ou qui ne fonctionne pas et donc ne produit aucun résultat
au lieu d'avoir un programme "qui fonctionne" et qui produit n'importe
quoi comme résultats...
Dans votre cas, votre fonction n'est en aucun cas "critique" et ne
nécessite pas de traiter d'exception...
Normalement dans tout programme on traite très peu d'exception sauf au
niveau global pour générer un "rapport d'incident" et l'envoyer par e-mail
au ST du logiciel...
Il faut aussi éviter d'utiliser (question de performances) la gestion des
exceptions comme ceci :
Try
File.Open("C:.....MonFichier.txt")
Catch FileNotFound e
MsgBox "Impossible de trouver le fichier"
End Try
Préférez ce code :
If File.Exists("C:.....MonFichier.txt") Then
File.Open("C:.....MonFichier.txt")
Else
MsgBox "Impossible de trouver le fichier"
End If
Cordialement
--
Gilles TOURREAU
S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr