Kom ihåg mig?
Home Menu

Menu


Köra .bat fil från webb

Ämnesverktyg Visningsalternativ
Oläst 2006-07-20, 14:35 #1
T1UP4ME T1UP4ME är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2006
Inlägg: 7
T1UP4ME T1UP4ME är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2006
Inlägg: 7
Försöker köra en .bat fil från en ASP sida i utvecklingsmiljön (IIS 5.1 och Windows 2000 Pro) med följande kod:

<%

Dim WshShell
Set WShShell = Server.CreateObject("WScript.Shell")
RetVal = WShShell.Run("C:\myconvert\convert.bat", 1, True)
Set WshShell = Nothing

%>


Bat-filen startat en .exe som omvandlar pdf till text (http://www.jimisoft.com och all2txt). Om jag exekverar bat-filen manuellt så fungerar det utmärkt. Exekverar jag .bat filen från en ASP sida händer ingenting. Inte ens ett felmeddelande.

Har IUSR_ har rättigheter på convert.bat, exe-filen och mappen där textfilen skapas och cmd.exe.

Verkar vara något kopplat till säkerheten. På utvecklingsmiljön finns Norton Antivirus, men jag har provat att slå av den utan något resultat. Har provat samma script även i produktionsmiljön, det fungerade inte heller.

Har någon varit med om något liknande eller har några idéer? Just shoot!
T1UP4ME är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-07-21, 09:39 #2
Westmans avatar
Westman Westman är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Jun 2004
Inlägg: 4 021
Westman Westman är inte uppkopplad
Klarade millennium-buggen
Westmans avatar
 
Reg.datum: Jun 2004
Inlägg: 4 021
Ja det är inte tillåtet helt enkelt (filrättigheter och/eller iis internt). Jag såg för länge sen en lösning där man använde wsh:s exec istället för run. Lite länkar som kan vara till nytta:
Code Comments
Ang. Executor
Westman är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-07-21, 11:24 #3
T1UP4ME T1UP4ME är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2006
Inlägg: 7
T1UP4ME T1UP4ME är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2006
Inlägg: 7
Tack Westman för att du fick mig på rätt spår, 3 dagars frustration har nu utbyts mot ren glädje.

Följande kod kan användas för att kunna köra kommandon som exekverar .exe-filer:

<%
Dim WshShell, oExec, CommandLine, Buf

CommandLine = "C:\mycmd.exe C:\mypdf.pdf C:\mytext.txt"
Set WshShell = Server.CreateObject("WScript.Shell")
Set oExec = WshShell.Exec(CommandLine)

Do While Not oExec.StdOut.AtEndOfStream

Buf = oExec.StdOut.Read(1)

if Buf = Chr(13) then Buf = "
" & Buf
Response.Write Buf
Loop
Set WshShell = Nothing

%>
T1UP4ME är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-07-21, 20:02 #4
Micke_Ns avatar
Micke_N Micke_N är inte uppkopplad
Medlem
 
Reg.datum: May 2004
Inlägg: 159
Micke_N Micke_N är inte uppkopplad
Medlem
Micke_Ns avatar
 
Reg.datum: May 2004
Inlägg: 159
Citat:
Originally posted by T1UP4ME@Jul 21 2006, 11:24
Tack Westman för att du fick mig på rätt spår, 3 dagars frustration har nu utbyts mot ren glädje.
Såhär i efterhand är det kanske inte intressant men ett sök på WN som t ex
http://www.webmasternetwork.se/index...=12&t=9878&hl=

hade kanske sparat någon dag :-)
Micke_N är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 01:51.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017