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

VB.NET Discussion :

Comande Shell: path fichier donné par une variable? [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Par défaut Comande Shell: path fichier donné par une variable?
    Bonjour, je suis sur un petit projet qui consiste à automatiser le transcodage vidéo de vlc pour des vidéos compatible HTML5.

    Je voudrais donc envoyer des commande shell personnalisée via un petit interface graphique. J'utilise Virtual Basic Expresse.

    Mais je bloque sur la magnière de crée mes commandes avec

    My.Computer.FileSystem.WriteAllText

    Mais je n'arrive pas à écrire le contenus de mes variable dans mon text...
    Si vous pouviez m'aider

    ps: J'aimerais bien me passer d'un fichier .bat je suis donc à l'écoute de vos proposition !




    Mon code pour l'instant :
    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
     
    Public Class Form1
        'Déclaration des variables:
     
        Dim selectedFile As String = String.Empty
        Dim selectedFolder As String = String.Empty
     
     
        'Demande le chemin du fichier vidéo à convertire.
        Private Sub BpParcourireSource_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BpParcourireSource.Click
     
            OpenFileDialogInput.ShowDialog()
            selectedFile = OpenFileDialogInput.FileName
     
     
            If (selectedFile IsNot Nothing) Then
                TextBoxInput.Text = selectedFile
            End If
     
        End Sub
     
        'Demande où l'utilisateur veut enregistrer le pack de vidéos converties.
        Private Sub BpParcourireOutput_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BpParcourireOutput.Click
     
            FolderBrowserDialogOutput.ShowDialog()
            selectedFolder = FolderBrowserDialogOutput.SelectedPath
     
     
     
            If (selectedFolder IsNot Nothing) Then
                TextBoxOutput.Text = selectedFolder
     
            End If
     
        End Sub
     
        'Lance le prossesus de convertion.
        Private Sub BpConvert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BpConvert.Click
     
            'Crée un fichier .bat dans le quelle l'on va génèrer le code Shell
     
     
            My.Computer.FileSystem.WriteAllText("C:\TestFolder1\test.txt", _
    "This is new text to be added.", True)
     
     
     
     
     
        End Sub
    End Class
    L'idée c'est d'utiliser les variable "selectedFile"= fichier_entrée et "selectedFolder"= fichier Sortie. dans le code batch que voila
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    vlc -Idummy fichier_entree --sout "#transcode{vcodec=div3,acodec=vorb}:standard{access=file,dst='fichier_sortie',mux=ogg}"
    vlc://quit
    Merci

  2. #2
    Membre expérimenté Avatar de Saintelaitlait
    Homme Profil pro
    Responsable ServiceDesk
    Inscrit en
    Août 2011
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Canada

    Informations professionnelles :
    Activité : Responsable ServiceDesk
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 179
    Par défaut
    Soit j'ai pas compris ce que tu voulais, soit c'est tout simple

    Donc on veux ici faire un string qui contiendra la ligne de commande, et y ajouté la valeur de tes variables c'est ca?

    Si oui ca donne un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        Dim fichier_entree As String = "toto.txt"
            Dim fichier_sortie As String = "titi.txt"
            Dim maCommande As String = ""
     
    maCommande = "vlc -Idummy " & fichier_entree & " ""--sout #transcode{vcodec=div3,acodec=vorb}:standard{access=file,dst='" & fichier_sortie & "',mux=ogg}""" & _
            vbCrLf & "vlc://quit"
    J'ai triplé les double quotes pour pouvoir les afficher comme dans ton exemple, le vbcrlf c'est le retour de chariot, et le & c'est le signe de concaténation

    Ca donne ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    vlc -Idummy toto.txt "--sout #transcode{vcodec=div3,acodec=vorb}:standard{access=file,dst='titi.txt',mux=ogg}"
    vlc://quit
    Essaie et redonne des nouvelles

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Par défaut
    Je vais essayer de faire quelque chose avec ce que tu m'as donné ^^

    Et merci

    la suite demain ^^

  4. #4
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Par défaut
    Voila! Grâce à ton aide j'ai bien pu avancer ! Maintenant j'arrive à crée mon batch Encore un peut de travaille et ce seras tout bon !

    Mon code à ce jours.
    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
     
    Public Class Form1
        'Déclaration des variables:
     
        Dim selectedFile As String = String.Empty
        Dim selectedFolder As String = String.Empty
        Dim maCommande As String = String.Empty
     
     
        'Demande le chemin du fichier vidéo à convertire.
        Private Sub BpParcourireSource_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BpParcourireSource.Click
     
            OpenFileDialogInput.ShowDialog()
            selectedFile = OpenFileDialogInput.FileName
     
     
            If (selectedFile IsNot Nothing) Then
                TextBoxInput.Text = selectedFile
            End If
     
        End Sub
     
        'Demande où l'utilisateur veut enregistrer le pack de vidéos converties.
        Private Sub BpParcourireOutput_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BpParcourireOutput.Click
     
            FolderBrowserDialogOutput.ShowDialog()
            selectedFolder = FolderBrowserDialogOutput.SelectedPath
     
     
     
            If (selectedFolder IsNot Nothing) Then
                TextBoxOutput.Text = selectedFolder
     
            End If
     
        End Sub
     
        'Lance le prossesus de convertion.
        Private Sub BpConvert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BpConvert.Click
     
            'Forger la comande à partire des variables.
            maCommande = _
            vbCrLf & "vlc -Idummy """ & selectedFile & """ --sout ""#transcode{vcodec=div3,acodec=vorb}:standard{access=file,dst='""" & selectedFolder & """',mux=ogg}""" & _
            vbCrLf & "vlc://quit"
     
            'Ecrire la comande dans un ficher .bat temporaire.
            My.Computer.FileSystem.WriteAllText("c:\VideoConvertertemp.bat", maCommande, True)
     
     
            'Executer le batch dans le cmd.
            Shell("C:\Windows\System32\cmd.exe /K c:\VideoConvertertemp.bat")
     
     
            'Suprimer le ficher temporaire.
            Shell("del c:\VideoConvertertemp.bat")
     
        End Sub
     
     
     
    End Class

  5. #5
    Membre confirmé
    Inscrit en
    Août 2002
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 25
    Par défaut
    Hello,

    Pour les manipulations de fichiers tu devrais utiliser les classes du namespace IO et pour lancer un shell, pour une meilleure intégration, je te conseille la classe process
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim process As New Process
    process.StartInfo.FileName = "cmd.exe"
    process.StartInfo.Arguments = "<ta ligne de commande>"
    process.Start()
    process.WaitForExit()
    process.Close()

  6. #6
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Par défaut
    Merci pour le conseille je vais cogiter tout ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion des fichiers crées par une base de donnée installée sur linux
    Par jo-concept dans le forum Administration système
    Réponses: 2
    Dernier message: 29/03/2011, 20h01
  2. Réponses: 0
    Dernier message: 22/06/2010, 15h53
  3. exporter donnée sur fichier excel par une page asp
    Par zaki_1982 dans le forum ASP
    Réponses: 3
    Dernier message: 19/04/2010, 19h14
  4. Réponses: 2
    Dernier message: 17/09/2008, 16h17
  5. [PHP-JS] Insertion de fichier php par une variable
    Par JBLCN dans le forum Langage
    Réponses: 4
    Dernier message: 22/06/2007, 12h54

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