Page 1 sur 1

[R] FileSelectFolder

Posté : sam. 03 mai 2008 01:39
par Yoyo86220
Bonjour,

Code : Tout sélectionner

While 1
    $DirInstall = FileSelectFolder("Bienvenue Dans l'Installation Du Patch DuraAn Serveur, Selectionner le dossier: World Of Warcraft.", "")
        If FileExists($DirInstall & "\wow.exe") And FileExists($DirInstall & "\realmlist.wtf") Then ExitLoop
        MsgBox(48, "Erreur", "Vous n'avez pas selectionné le dossier: World Of Warcraft")
Wend
Je voudrai que je puisse fermer cette fenêtre car quand je clic sur annuler ou la croix il m'indique toujours mon message d'erreur... Comment faire?

Re: [..]

Posté : sam. 03 mai 2008 03:17
par Greenhorn
Bonjour,

do you mean something like this ...?

Code : Tout sélectionner

While True
    ; FileSelectFolder returns a blank string ("") if the window is closd or the cancel button was pressed
    If Not $DirInstall = FileSelectFolder("Bienvenue Dans l'Installation Du Patch DuraAn Serveur, Selectionner le dossier: World Of Warcraft.", 6, @ProgramFilesDir) Then ErrMsg("Vous n'avez pas selectionné le dossier: World Of Warcraft")

    If FileExists($DirInstall & "\wow.exe") And FileExists($DirInstall & "\realmlist.wtf") Then ExitLoop
WEnd

Func ErrMsg($sMsg)
    
    MsgBox(266256, 'Erreur', $sMsg)
    
EndFunc
 

Salut
Greenhorn

Re: [..] FileSelectFolder

Posté : sam. 03 mai 2008 11:33
par Tlem
Au lieu d'utiliser une boucle While, vous devriez utiliser un code classique (Sauf si vous voulez vraiment que l'utilisateur choisisse un répertoire) :

Code : Tout sélectionner

Dim $DirInstall

If $DirInstall = FileSelectFolder("Bienvenue Dans l'Installation Du Patch DuraAn Serveur, Selectionner le dossier: World Of Warcraft.", "") Then
    MsgBox(48, "Erreur", "Vous n'avez pas selectionné de dossier")
    $Res = 0  ; Erreur, Pas de sélection.
Else
    If FileExists($DirInstall & "\wow.exe") And FileExists($DirInstall & "\realmlist.wtf") Then
        $Res = 1 ; C'est bon.
    Else
        MsgBox(48, "Erreur", "Vous n'avez pas selectionné le dossier: World Of Warcraft")
        $Res = 0 ; Erreur, Pas le bon dossier
    EndIf
EndIf