Avatar billede nightowl24 Nybegynder
23. marts 2005 - 11:35 Der er 13 kommentarer og
2 løsninger

Kald af bat fil fra ASP

Hej

Jeg har lavet et offline browserbaseret shopsystem der genererer en kommasepareret tekstfil. Jeg har desuden lavet en batfil med noget ftp der overfører filen til en server når man har adgang til nettet.

Kan man kalde denne batfil fra ASP? Fx. ved tryk på en knap.

/nightowl
Avatar billede moejensen Nybegynder
23. marts 2005 - 11:39 #1
jeg her fundet det her engang, hvor man kalder ping, så kan man vel også kalde en bat fil.

<%
strIP = "www.abc.dk"
Function ipAdresse(strIP)
        Set net = Server.CreateObject("wscript.network")
        Set sh = Server.CreateObject("wscript.shell")
        sh.run "%comspec% /c ping " & strIP & " > " & server.mappath( strIP & ".txt"),0,true
        Set sh = nothing
        Set fso = createobject("scripting.filesystemobject")
        Set ts = fso.opentextfile(server.mappath( strIP & ".txt"))
        ipAdresse = null
        Do While Not ts.AtEndOfStream
        data = trim(ts.readline)
      If instr(data,"Ping-statistikker for ") Then
      myArr = split(data,"Ping-statistikker for ")
    ipAdresse = myArr(1)
        Exit Do
        End If
        loop
        ts.close
        Set ts = nothing
        'fso.deletefile server.mappath( strIP & ".txt") 'Used to delete the        temp file
        Set fso = nothing
        ipAdresse = trim(split(ipAdresse,":")(0))
        End Function
response.write(ipAdresse(strIP))
%>
Avatar billede moejensen Nybegynder
23. marts 2005 - 11:42 #2
det du sådan set behøver er bare:

<%
Set server_shell = Server.CreateObject("wscript.shell")
server_shell.Run "%comspec% /c FILE_TO_EXECUTE"
%>
Avatar billede nightowl24 Nybegynder
23. marts 2005 - 11:56 #3
Jeg får fejlen tilladelse nægtet :(
Avatar billede moejensen Nybegynder
23. marts 2005 - 12:02 #4
du skal selvfølgelig sørge for at de rigtige rettigheder er sat på serveren.

IUSR_SERVERNAVN skal have skrive, læse og eksekverings rettigheder
Avatar billede nightowl24 Nybegynder
23. marts 2005 - 12:14 #5
Og hvordan gør jeg det? - jeg har sat webserveren op til at tillade eksekverbare filer i iis.
Avatar billede moejensen Nybegynder
23. marts 2005 - 12:24 #6
du finder filen, og højreklikke rpå den, så vælger du egenskaber, og fanebladet sikkerhed, her adder du brugeren IUSR_SERVERVAN, hvis den ikke er der i forvent, og sætter rettighederne.
Avatar billede nightowl24 Nybegynder
23. marts 2005 - 12:36 #7
Det ændrer ikke rigtig noget, får den samme fejl
Avatar billede moejensen Nybegynder
23. marts 2005 - 12:55 #8
prøv med:

Dim objShell
Set objShell = Server.CreateObject(\"wscript.Shell\")
Dim strCMD
strCMD = \"C:\\Fil.bat\"
objShell.Run(strCMD,0,true)

taget fra: http://eksperten.dk/spm/27742
Avatar billede moejensen Nybegynder
23. marts 2005 - 12:58 #9
Avatar billede nightowl24 Nybegynder
23. marts 2005 - 13:25 #10
hmm, det er da rimelig indviklet :) Det ser ud til at det skal køre på klientsiden eller hvad?
Avatar billede nightowl24 Nybegynder
23. marts 2005 - 13:27 #11
Men jeg får denne fejl nu:
Der kan ikke bruges parenteser ved kald af en Sub
/axld/shoppingModule.asp, line 200, column 27
objShell.run(strCMD,0,true)
Avatar billede moejensen Nybegynder
23. marts 2005 - 13:28 #12
så skriver du:

objShell.run strCMD,0,true
Avatar billede nightowl24 Nybegynder
23. marts 2005 - 13:36 #13
æv, så får jeg bare tilladelse nægtet igen
Avatar billede moejensen Nybegynder
23. marts 2005 - 13:41 #14
jeg skal være ærlig at sige at jeg aldrig selv har rodet med det, jge har bare gemt scriptet hvis jeg en dag fik brug for det, så jeg kan ikke give dig en løsning. Vent og se om ikke der er andre der kommer forbi, og kan svare på det sidste.
Avatar billede nightowl24 Nybegynder
29. marts 2005 - 08:54 #15
Jeg valgte at løse det på en andet måde, så jeg bare linker til batfilen og så må brugerene trykke på kør...Ellers tak for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester