nadriel
Messages postés5Date d'inscriptionjeudi 20 août 2009StatutMembreDernière intervention 5 juillet 2015
-
Modifié par nadriel le 5/07/2015 à 17:09
cs_ShayW
Messages postés3253Date d'inscriptionjeudi 26 novembre 2009StatutMembreDernière intervention 3 décembre 2019
-
7 juil. 2015 à 15:16
Bonjour,
Je bloque sur un petit bout de code qui est censé permettre de décompresser une archive en .rar pour cela j'ai trouvé ceci sur le net :
Private Sub Unrar(ByVal filepath As String, ByVal workingDir As String)
Dim objRegKey As RegistryKey
objRegKey = Registry.ClassesRoot.OpenSubKey("WinRAR\Shell\Open\Command")
Dim obj As Object = objRegKey.GetValue("")
Dim objRarPath As String = obj.ToString()
objRarPath = objRarPath.Substring(1, objRarPath.Length - 7)
objRegKey.Close()
Dim objArgs As String
objArgs = " X " & " " & filepath & " " + " " + workingDir
Dim objStartInfo As New ProcessStartInfo()
objStartInfo.UseShellExecute = False
objStartInfo.FileName = objRarPath
objStartInfo.Arguments = objArgs
objStartInfo.WindowStyle = ProcessWindowStyle.Hidden
objStartInfo.WorkingDirectory = workingDir & ""
Dim objPro As New Process()
objPro.StartInfo = objStartInfo
objPro.Start()
End Sub
J'utilise donc cette procédure dans un bouton Histoire de la tester :
Private Sub FlatButton4_Click(sender As Object, e As EventArgs) Handles FlatButton4.Click
Unrar("C:\Users\Nadriel\AppData\Roaming\LauncherArma3\ModsDownload\", "C:\Users\Nadriel\AppData\Roaming\LauncherArma3\ModsDownload.rar")
End Sub
mais cela me retourne l'erreur : Nom du répertoire non valide.
Débutant en VB je ne sais pas comment régler ce problème
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 5 juil. 2015 à 21:59
Il faut que tu corrigescette valeur donc, car il va chercher à executer l'ensemble de objRarPath, et donc ne trouveras pas l'executable, il faut que tu ne gardes que "C:\Program Files (x86)\WinRAR\WinRAR.exe" (sans les ") pour la valeur.
nadriel
Messages postés5Date d'inscriptionjeudi 20 août 2009StatutMembreDernière intervention 5 juillet 2015
>
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024 Modifié par nadriel le 5/07/2015 à 23:36
Ok, Merci !
je vais essayer de modifier ça, étant donnée que c'est du code copier collé je n'ai aucune idée de la provenance de ce "%1"
je vais chercher et je te tien au courant de l'évolution ;)
EDIT : C'est bon objRarPath a comme valeur
"C:\Program Files (x86)\WinRAR\WinRAR.exe"
mais quand tu dis sans les ( " ) tu veux dire tousse ou la c'est bon ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 Modifié par ucfoutu le 6/07/2015 à 07:30
Bonjour, nadriel,
étant donnée que c'est du code copier collé je n'ai aucune idée de la provenance de ce "%1"
Lire ceci me déprime à un point que je ne saurais décrire .
Tu sais quoi, nadriel ? tu risques fort de copier/coller un jour des instructions malveillantes sans même être en mesure de te rendre compte des dégâts qu'elles pourraient générer sur ta machine ou des espions qu'elles y installeraient (ou des chevaux de Troie utilisables ultérieurement pour installer du pire encore)
En compilant ensuite puis exécutant ton appli, tu seras alors ton propre "bourreau" !!!
Ne prends pas mal cette remarque. Sa vocation n'est pas de se moquer, mais de t'alerter.
EDIT : dès lors que tu demandes de l'aide sur un/des forum(s) de développement, tu deviens parfaitement "repéré" comme étant susceptible de devenir une proie facile (qui va copier/coller/installer/exécuter) . Il est alors facile à toute âme mal intentionnée de "peser" tes carences et d'en profiter pour te faire faire très facilement toi-même sur ta machine (le code copié/collé sans le comprendre) ce qu'il ne peut faire à distance.