Avatar billede hoffmann Nybegynder
26. november 2003 - 11:12 Der er 20 kommentarer og
1 løsning

Kør bat fra aspside

Jeg skal køre en bat fil fra en aspside.

Jeg har forsøgt mig med aspexec :
********
  Set Executor = Server.CreateObject("ASPExec.Execute")
  Executor.Application = "c:\inetpub\wwwroot\lfs_host.bat"
  Executor.Parameters = ""
  Executor.ShowWindow = True
  Response.Write "Attempting to execute " & Executor.Application & "<br>"
  strResult = Executor.ExecuteWinApp
  Response.Write "The result of this call was: " & strResult
********

Batfilen sender parametre (gameserver parametre) til en exefil som starter en gameserver op.

Jeg kan godt få eksemplet til at starte exefilen direkte op, men da der ingen parametre ligger i exefilen startes gameserveren ikke rigtigt op.

Når jeg køre ovennævnte eksempel sker ingenting...

LFS_host.bat ser således ud :
**********
LFS /host=Hofftest /port=63392  /mode=s1 /dedicated=nogfx /usemaster=yes /track=Blackwood /config=1 /reversed=no /weather=1 /cars=FRT  /maxguests=9 /carsmax=8 /carshost=1 /carsguest=1 /pps=4 /qual=0 /laps=6 /wind=0  /vote=yes /select=yes
**********

Køre jeg ovenstående direkte fra kommandopromten starter gameserveren rigtigt op.

Os : win2000 proff.

Nogen der kan hjælpe ?
Avatar billede chriscross Nybegynder
26. november 2003 - 11:38 #1
Jeg har ikke rigtig leget med den komponent, men:
1) har du registreret dll'en rigtigt ?

Ellers er der et eksempel her:
http://www.4guysfromrolla.com/webtech/072199-2.shtml
- her startes kommandopromten op og bat-filen gives som parameter - mon ikke det er det du vil ?
Avatar billede hoffmann Nybegynder
26. november 2003 - 11:47 #2
Eksemplet du gave linket til giver mig et "ok", men der sker ingenting, og ja dll'en skulle være registreret rigtigt.

**************
    Dim objExecutor
    Dim sResult   

Set objExecutor = Server.CreateObject("ASPExec.Execute")
objExecutor.Application = "cmd.exe"
objExecutor.Parameters = "/c C:\Inetpub\wwwroot\lfs_host.bat"
objExecutor.ShowWindow = False
sResult = objExecutor.ExecuteWinApp
Response.Write "Result: " & sResult & "<p>"
**************
Avatar billede mekaniker Nybegynder
26. november 2003 - 11:48 #3
Du kan bruge et gratis komponent, som kan findes her
http://www.netcoders.dk/components.asp?mode=show_component&comp_id=47


Her har jeg brugt den til at køre en commandline zip-funktion
Den ka da helt sikkert også bruges til at køre en bat-fil med

Set Executor = Server.CreateObject("ASPExec.Execute")
    zip_exe = Server.Mappath("pak/wzzip.exe")&" -rp "
    zip_file = "G:\Websites\zip\test.zip "
    filesToPack = "G:\Websites\zip\billeder\*.*"
   
    Executor.Application = zip_exe & zip_file & filesToPack
    Executor.TimeOut = 9000
Avatar billede chriscross Nybegynder
26. november 2003 - 11:49 #4
Hmm, prøv at sætte ShowWindow til True.

Hedder din kommandopromt cmd.exe ?
Avatar billede chriscross Nybegynder
26. november 2003 - 11:50 #5
>>mekaniker
Det er jo den komponent hoffmann ikke lige kan få til at gøre det rigtige...
Avatar billede chriscross Nybegynder
26. november 2003 - 11:52 #6
Ellers er der jo også et andet kald: ExecuteDosApp i stedet for ExecuteWinApp...
Avatar billede hoffmann Nybegynder
26. november 2003 - 11:52 #7
showwindow = true

stadigt intet :( - hvis jeg fjerner parametrene ser jeg at cmd startes op i task manager..
Avatar billede hoffmann Nybegynder
26. november 2003 - 11:53 #8
ExecuteDosApp  giver dette svar :

C:\WINNT\system32>LFS /host=Hofftest /port=63392 /mode=s1 /dedicated=nogfx /usemaster=yes /track=Blackwood /config=1 /reversed=no /weather=1 /cars=FRT /maxguests=9 /carsmax=8 /carshost=1 /carsguest=1 /pps=4 /qual=0 /laps=6 /wind=0 /vote=yes /select=yes 'LFS' is not recognized as an internal or external command, operable program or batch file.
Avatar billede hoffmann Nybegynder
26. november 2003 - 11:56 #9
Det sidste her ser ud til at den "står" i den forkerte mappe... LFS.exe ligger ikke i system32..
Avatar billede chriscross Nybegynder
26. november 2003 - 11:56 #10
hmm, ja så er det nok ikke den - det er ærgeligt der ikke er forfærdelig meget dokumentation med..men det betyder vel at du bruger den rigtige stiangivelse i parameter
Avatar billede chriscross Nybegynder
26. november 2003 - 11:57 #11
Er det der dll'en ligger
- du så godt i kommentarerne at det der med \c foran var noget NT
Avatar billede hoffmann Nybegynder
26. november 2003 - 11:59 #12
ja dll'en ligger i system 32
fjerner jeg /c skriver den blot:

Result: Microsoft Windows 2000 [Version 5.00.2195] (C) Copyright 1985-2000 Microsoft Corp. C:\WINNT\system32>
Avatar billede chriscross Nybegynder
26. november 2003 - 12:25 #13
Hm, det var da mystisk...
Er ISS'en sat op til at måtte eksekvere scripts ( jeg ved ikke om det giver fejl hvis ikke )
Avatar billede hoffmann Nybegynder
26. november 2003 - 12:31 #14
Ja IIS kan eksekvere scripts
Avatar billede chriscross Nybegynder
26. november 2003 - 12:37 #15
Hvad med scripts and executables ?

Her er et udklip fra ASPEXEC.TXT:
You MUST go into control panel/services/world wide web publishing service
and turn Allow Service to Interact with Desktop on to use this component
if you run IIS as a service.
Avatar billede hoffmann Nybegynder
26. november 2003 - 12:40 #16
Yepper, den er slået til :(
Avatar billede chriscross Nybegynder
26. november 2003 - 12:41 #17
Og:
Some users after upgrading to SP3 report that visual apps no longer pop up. Make sure that you have any Inetinfo managed services marked as "Allow to Interact with Desktop" if you want to see visible apps on the server screen. Otherwise they will appear as hidden windows.
Avatar billede hoffmann Nybegynder
26. november 2003 - 13:49 #18
chriscross, tak for din hjælp, men det virker stadig ikke...
Avatar billede chriscross Nybegynder
26. november 2003 - 13:51 #19
Kedeligt - jeg er nemlig løbet tør for idéer
- held og lykke
Avatar billede hoffmann Nybegynder
26. november 2003 - 13:53 #20
tak :)
Avatar billede hoffmann Nybegynder
12. november 2004 - 10:09 #21
lukker
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