Commande SHELL qui s'execute pas

foofur Messages postés 13 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 5 février 2008 - 19 sept. 2006 à 09:04
foofur Messages postés 13 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 5 février 2008 - 25 sept. 2006 à 09:47
Bonjour,

J'ai tout essayer dans mon domaine de compétence, et là j'avoue être à court d'idée.
J'essaye d'executer une commande SHELL dans une page ASPnet. Celle ci fonctionne très bien en local mais pas sur le serveur.

Voici mon code :

Dim WshShell

'chemin d'accès pour utiliser winzip

gWinZipLocation =
"C:\Progra~1\WinZip\WINZIP32.EXE"

'emplacement des fichiers

zLocalDir = Server.MapPath(".") + "\Archive"

'nom du fichier

zFileName = CStr(TextBox3.Text)

'commande shell

WshShell = Server.CreateObject("WScript.Shell")

WshShell.Run("""" & gWinZipLocation & """ -e """ & zLocalDir & "" & zFileName & """ """ & zLocalDir & """", 3)

Avez vous une idée de ce qui pourrait clocher?

Merci,

Flo :D

6 réponses

billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
19 sept. 2006 à 10:34
Je tenterais le Server.MapPath("~") plutôt que le "." qui serait mal interprété par le serveur.
Cependant le Server.MapPath("~") renvoie le répertoire racine du site web.

(Mais je met pas ma main à couper)

Note: as-tu essayé la librairie ICSharpCode.SharpZipLib.dll pour .net qui permet de décompresser les zip.


Billou_13

Bask En Force


--------------------------------------------------------------------

Connaître la réponse est une chose, savoir pourquoi en est une autre

---------------------
0
foofur Messages postés 13 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 5 février 2008
21 sept. 2006 à 11:37
J'ai tenté le Server.MapPath("~") mais ça ne change rien. Il ne se passe malheureusement toujours rien.
Peut etre aurais je du preciser que sur mon poste, j'ai IIS5 et ça fonctionne et que sur le serveur je dispose de IIS6.
Je ne sais pas si la version peut jouer une différence ou non.

Quand à la librairie ICSharpCode.SharpZipLib.dll, je ne peux pas l'utiliser car en fait il ne s'agit pas de fichier .zip mais .Z.
Quand j'utilise cette librairie il me met une erreur de signature...car le format n'est pas reconnu.

Flo :D
0
billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
22 sept. 2006 à 08:08
Désolé pour la fausse piste, je pensais que cela marcherait.

Peut-être peux tu essayer la classe process comme suit :

Process p = new Process();
p.StartInfo.FileName = 
"C:\Progra~1\WinZip\WINZIP32.EXE"
;
//Arguments à voir
p.StartInfo.Arguments = """ -e """ & zLocalDir & "" & zFileName & """ """ & zLocalDir & """"
;
p.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
p.Start();

A tester... (en tout cas, cela marche chez moi)

Billou_13

Bask En Force


--------------------------------------------------------------------

Connaître la réponse est une chose, savoir pourquoi en est une autre

---------------------
0
crilun Messages postés 114 Date d'inscription lundi 10 mai 2004 Statut Membre Dernière intervention 17 octobre 2006
22 sept. 2006 à 18:57
crilun
gWinZipLocation =
"C:\Progra~1\WinZip\WINZIP32.EXE"

et tu sur de ca?
par ce que si c'ets le chemin en local pour winzip ca ne l'est pas forcement pour le serveur...
verifie que winzip est bien installé sur le serveur et que c'est bien le bon chemin.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
foofur Messages postés 13 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 5 février 2008
25 sept. 2006 à 09:47
Merci bcp pour vos réponses, je teste ça rapidement.
Winzip est bien installé sur le serveur et c'est le bon chemin également.




Flo :D
0
foofur Messages postés 13 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 5 février 2008
25 sept. 2006 à 09:47
Merci bcp pour vos réponses, je teste ça rapidement.
Winzip est bien installé sur le serveur et c'est le bon chemin également.




Flo :D
0
Rejoignez-nous