IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual Studio Discussion :

Problème launcher de jeu


Sujet :

Visual Studio

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Problème launcher de jeu
    Bonjour à tous, je me lance dans le codage en VB pour réaliser un launcher, c'est a dire un petit programme qui se lance avant l'exécution d'un jeu, et qui vérifie que tous les fichiers du jeu sont à jour, tout d'abord, voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            MsgBox("Vérification des fichiers pour la mise à jour, veuillez patienter", MsgBoxStyle.Exclamation)
            Timer1.Start()
     
            Button7.Show()
            Button1.Hide()
     
     
     
            If System.IO.Directory.Exists(Environment.SpecialFolder.Desktop & "\Extazy") = True Then
                Kill("C:\Program Files\Extazy\Config.xml")
                Kill("C:\Program Files\Extazy\Modules\Core.swf")
                Kill("C:\Program Files\Extazy\Modules\Soma.swf")
                Kill("C:\Program Files\Extazy\Loader.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/86436lt21a6m071/config.xml", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Config.xml")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/8gmyfgycmh0husb/core.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Core.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/420i9kefgasacvh/soma.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Soma.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/5bjchf3azv5bhrd/loader.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Loader.swf")
     
            ElseIf System.IO.Directory.Exists(Environment.SpecialFolder.Desktop & "\Extazy") = False Then
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/86436lt21a6m071/config.xml", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Config.xml")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/8gmyfgycmh0husb/core.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Core.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/420i9kefgasacvh/soma.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Soma.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/5bjchf3azv5bhrd/loader.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Loader.swf")
            End If
            MsgBox("Mise à jour terminée, le jeu va se lancer automatiquement", MsgBoxStyle.Information)
     
     
     
     
            Shell("C:\Desktop\Extazy\Extazy.exe")
            Me.Close()
        End Sub
     
        Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
            Button2.Show()
            Button3.Hide()
            Button4.Hide()
            Button5.Hide()
            Button6.Hide()
        End Sub
     
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Button2.Hide()
            Button3.Show()
            Button4.Show()
            Button5.Show()
            Button6.Show()
        End Sub
     
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            System.Diagnostics.Process.Start("http://25.32.190.92/site.php")
        End Sub
     
        Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
            System.Diagnostics.Process.Start("http://sectionxiii.xooit.com")
        End Sub
     
        Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
            System.Diagnostics.Process.Start("http://25.32.190.92/vote.php")
        End Sub
     
        Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
     
        End Sub
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Button1.Show()
            Button2.Show()
            Button3.Hide()
            Button4.Hide()
            Button5.Hide()
            Button6.Hide()
            Button7.Hide()
     
        End Sub
     
        Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
     
        End Sub
     
        Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
            Timer1.Stop()
            ProgressBar1.Value = 0
        End Sub
     
        Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
            ProgressBar1.Value += 1
        End Sub
    End Class
    Mon problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     If System.IO.Directory.Exists(Environment.SpecialFolder.Desktop & "\Extazy") = True Then
                Kill("C:\Program Files\Extazy\Config.xml")
                Kill("C:\Program Files\Extazy\Modules\Core.swf")
                Kill("C:\Program Files\Extazy\Modules\Soma.swf")
                Kill("C:\Program Files\Extazy\Loader.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/86436lt21a6m071/config.xml", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Config.xml")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/8gmyfgycmh0husb/core.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Core.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/420i9kefgasacvh/soma.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Soma.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/5bjchf3azv5bhrd/loader.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Loader.swf")
     
            ElseIf System.IO.Directory.Exists(Environment.SpecialFolder.Desktop & "\Extazy") = False Then
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/86436lt21a6m071/config.xml", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Config.xml")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/8gmyfgycmh0husb/core.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Core.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/420i9kefgasacvh/soma.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Soma.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/5bjchf3azv5bhrd/loader.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Loader.swf")
            End If
            MsgBox("Mise à jour terminée, le jeu va se lancer automatiquement", MsgBoxStyle.Information)
    Je décortique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     If System.IO.Directory.Exists(Environment.SpecialFolder.Desktop & "\Extazy") = True Then
    Si je ne me trompe pas il vérifie que le dossier "Extazy" existe sur le bureau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     Kill("C:\Program Files\Extazy\Config.xml")
                Kill("C:\Program Files\Extazy\Modules\Core.swf")
                Kill("C:\Program Files\Extazy\Modules\Soma.swf")
                Kill("C:\Program Files\Extazy\Loader.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/86436lt21a6m071/config.xml", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Config.xml")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/8gmyfgycmh0husb/core.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Core.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/420i9kefgasacvh/soma.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Modules\Soma.swf")
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/5bjchf3azv5bhrd/loader.swf", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Loader.swf")
    Normalement, si le dossier Extazy existe sur le bureau, il efface (kill) le fichier qui existe puis télécharge la version qui est à l'adresse spécifiée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     ElseIf System.IO.Directory.Exists(Environment.SpecialFolder.Desktop & "\Extazy\Config.xml") = False Then
                My.Computer.Network.DownloadFile("https://www.dropbox.com/s/86436lt21a6m071/config.xml", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Extazy\Config.xml")
            End If
    Et si le dossier n'existe pas, il le crée simplement pour ne pas faire de kill dans le vide

    Mais le problème est que peu importe si le dossier Desktop\Extazy existe, il suit la ligne en considérant qu'il n'existe pas, et me dit qu'il ne peut pas crée le fichier etant donné qu'il existe déja.

    Comment puis-je faire ?

    Merci d'avance je débute et je n'en sors pas

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    C'est normal qu'il ne rentre jamais dans le IF car si tu utilises juste Environment.SpecialFolder.Desktop, ça ne te renvoie pas le chemin, c'est juste une énumération. Donc effectivement le dossier "0" (valeur de l'énum) n'existe pas

    Il faut utiliser la méthode Environment.GetFolderPath :
    Code VB.NET : Sélectionner tout - Visualiser dans une fenêtre à part
    Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

Discussions similaires

  1. Un problème avec un jeu de tennis
    Par Electroniktor dans le forum C
    Réponses: 63
    Dernier message: 06/07/2007, 14h09
  2. Problème pour un jeu de pong
    Par Galip dans le forum C++Builder
    Réponses: 4
    Dernier message: 05/04/2007, 09h28
  3. [Installation]Problème avec le jeu de caractère NLS
    Par Benzeghiba dans le forum Oracle
    Réponses: 2
    Dernier message: 27/12/2006, 09h35
  4. Problème avec le jeu : "la bataille"
    Par rouliane dans le forum C++
    Réponses: 5
    Dernier message: 21/12/2006, 13h36
  5. Problème avec un jeu
    Par CCin dans le forum C
    Réponses: 6
    Dernier message: 25/10/2005, 19h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo