Zip chemin de destination

Résolu
Signaler
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008
-
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008
-
Bonsoir tout le monde

Je me retourne de nouveau vers vous pour mon premier problème qui me pose quelque difficultés, j'ai essaye avant les petites recherches sur le forum, google ainsi que mes neurones, mais sans espoir a cette heure ci

J'utilise ce code pour faire un zip, il marche très bien sans aucun souci

Private Sub Label4_Click()
Dim z As ZipClass
Set z = New ZipClass
z.AddFile "c:\test.jpg"
z.WriteZip "c:\thhhest.Plsk", True
Set z = Nothing
End Sub


bénéfique pour le problème précédent.

J'ai essayé diverses techniques et quelques recherches presque nul sur les moteurs de recherches

J'utilise ce code pour faire un zip, il marche très bien sans aucun souci

Private Sub Label4_Click()
Dim z As ZipClass
Set z = New ZipClass
z.AddFile "c:\test.jpg"
z.WriteZip "c:\thhhest.Plsk", True
Set z =  Nothing
End Sub


Il me les compresse parfaitement

Voici le problème :

Dans le programme, l'utilisateur appuie sur un bouton, qui ouvre une nouvelle fenêtre, dans celle ci il choisis son dossier et le chemin du dossier se met alors dans une textbox

La tout est normal, tout est impeccable.

Mais est-il possible de faire comprendre grâce a un bout de code que celui ci en se zippant aille chercher le chemin de la textbox? (le chemin de destination du dossier)

Un petit exemple :

J'explique dans ma textbox, l'utilisateur a  comme chemin
"C:\Documents and Settings\Admin\Mes documents\Mes albums"

C'est l'endroit ou il a mis ses affaires qu'il veut zipper.

J'aimerais créer une option que le code reconnaissent ce chemin la et le zip

Exemple :

Private Sub Label4_Click()
Dim z As ZipClass
Set z  = New ZipClass

"Ici il va chercher directement 
C:\Documents and Settings\Admin\Mes documents\Mes albums
 qui se trouve dans la textbox"

Au lieu de mettre

z.AddFile "c:\test.jpg"

Car "c:\test.jpg" est un chemin que j'impose directement, 
et voudrais que dès lors le libre choix a l'utilisateur et 
ne pas passer par ce chemin la

z.WriteZip "c:\thhhest.Plsk", True
Set z = Nothing
End Sub


Merci beaucoup pour votre aide et votre patience

13 réponses

Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008

C'est bon j'ai trouvé la solution je vous poste le code
Dim
oShell
As
Object, Fso
As
Object
<code class="vb_keyword1">Dim
i
As
Long
Dim
Fichier
As
String
, MyBinary
As
String

Dim
LeZip
As
Variant
Dim
MyHex
As
Variant

Fichier = Text1.Text


LeZip
=
"
C:\Ma
sauvegarde.zip
"


Set
Fso
=
CreateObject
(
"
Scripting.FileSystemObject
"
)
MyHex
=
_
Array
(
80
,
75
,
5
,
6
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
)

For
i
=
0
To
UBound
(MyHex)
MyBinary
=
MyBinary
&amp;
Chr
(
MyHex
(i))
Next


With
Fso
.
CreateTextFile
(LeZip,
True
)
.
Write
MyBinary
.
Close

End
With


Set
oShell
=
CreateObject
(
"
Shell.Application
"
)
oShell
.
Namespace
(LeZip)
.
CopyHere
(Fichier)

Set
oShell
=
Nothing
</code>
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
salut,

z.WriteZip Txt_Ton_Chemin.Text & "\thhhest.Plsk", True

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008

Merci pour ta réponse, hélas cela ne fonctionne pas
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
essaye avec un chemin sans espace?
dans quel cas il faudra juste convertir avec getshortpathname

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008

Voila j'ai mis ceci :

Private Sub Label4_Click()
Dim z As ZipClass
Set z = New ZipClass
z.WriteZip Text1.Text & "\thhhest.Plsk", True
Set z = Nothing
End Sub

Puis essayer avec cela

Private Sub Label4_Click()
Dim z As ZipClass
Set z = New ZipClass
z.WriteZip Txt1.Text & "\thhhest.Plsk", True
z.WriteZip "c:\thhhest.zip", True
Set z = Nothing
End Sub

Je vais voir avec getshortpathname
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
ok mais QUE CONTIENT Txt1.Text

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008

dans text1

Elle est nommé Text1

et comme code j'ai

Private Sub Text1_Change()

End Sub
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
z.WriteZip Txt1.Text & "\thhhest.Plsk", True






Text1.Text


et pour le test je te demande d'y mettre un chemin court, dossiers existants de moins de 6 carac sans espaces

genre au LOAD => Text1.Text = "C:\doss1\doss2"



<hr size="2" width="100%" />
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008

Desole je n'y arrive pas, je suis encore que novice

Si tu veux peut te uploader ma source ne fait meme pas 1 mo
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
créer un FSO pour créer un fichier contenant du vent et un autre pour déplacer ce fichier?
eh bin il va être beau ton code!!!

sans méchanceté, c'est du grand n'importe quoi
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008

il y aura quelque chose dedans, c'et l'utilsateur qui choisira les fichiers qu'il veut zipper mais avec l'autre technique j'y arrive pas ou tu veux que je te uppe mon fichier?
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
mais tu vas pas m'envoyer un zip juste parce que tu ne lis pas ce que j'écris...

regarde bien :

au début tu dis que ta zone de texte nommée Text1 contient le nom du dossier de destination, à savoir
"C:\Documents and Settings\Admin\Mes documents\Mes albums"

ensuite avec ce que j'ai indiqué, tu utilises Txt1 (pas de E)

ensuite tu mets
Fichier = Text1.Text


oShell<code class="vb_function">.
Namespace
(LeZip)
.
CopyHere
(Fichier)</code>

il y a fort à parier que Text1.Text ne contienne pas UN NOM DE DOSSIER mais un nom de fichier !!

c'est évident que ni le ZIP ni le FSO ne sont des codes de toi, et je ne vais pas m'amuser à regarder ton projet pour y changer ce que je t'ai indiqué

faut y mettre du sien, les C/C çà va un moment non? ^^
bon courage & bonne soirée
<hr size ="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
16
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2008

J'essaie je vous tiendrai au courant

Mais j'ai jamais dit que le code était de moi