Avatar billede Slettet bruger
09. juni 2005 - 20:29 Der er 15 kommentarer og
1 løsning

Oppetids-script: expected end of statement

Hejsa

Jeg har aldrig brugt ASP før, og jeg ville lige hente et script til at vise serverens oppetid. Her er scriptet:

<%
PerformanceCounter pc = new PerformanceCounter ("System", "System Up Time")

pc.NextValue();
TimeSpan ts = TimeSpan.FromSeconds(pc.NextValue());
   
Response.Write("This system " + Environment.MachineName +
    " has been up for " + ts.Days + " days " + ts.Hours +
    " hours, " + ts.Minutes + " and " + ts.Seconds +
    " seconds.");
%>

Men desværre får jeg følgende fejl:

Microsoft VBScript compilation error '800a0401'

Expected end of statement

/Default.asp, line 9

PerformanceCounter pc = new PerformanceCounter ("System", "System Up Time")
-----------------------------------------------^


Nogen der ved, hvad det er?
Avatar billede Spotgun Seniormester
09. juni 2005 - 20:35 #1
Det kunne godt se ud til at det var noget ASP.NET kode du har fået fat i der. Hvis din server kun understøtter almindelig ASP, så kommer det dér ikke til at køre.
Avatar billede nielle Nybegynder
09. juni 2005 - 20:41 #2
Ikke nok med at det er ASP.NET kode, men det er faktisk også skrevet i C# - ikke i VB. Du får det aldrig til at virke.
Avatar billede Slettet bruger
09. juni 2005 - 21:01 #3
Okay :)

kender I et script som kan det jeg har brug for?
Avatar billede nielle Nybegynder
09. juni 2005 - 21:06 #4
Jeg har faktisk aldrig set den slags gjort i "gammeldavs" ASP. :^|
Avatar billede Spotgun Seniormester
09. juni 2005 - 22:29 #5
Jeg kunne forestille sig at man måske kunne stykke noget sammen af AspExec fra http://www.serverobjects.com og så Microsofts egen uptime.exe.

Det er dog ikke noget jeg har prøvet endnu...
Avatar billede Spotgun Seniormester
09. juni 2005 - 22:42 #6
Har lige testet det hele, og det virker egentligt fint.

Det kræver blot et par ting. AspExec skal være installeret på serveren, og desuden skal uptime.exe (http://www.microsoft.com/ntserver/nts/downloads/management/uptime/default.asp) ligge sammen med scriptet.

Herefter kan du få resultatet frem vha. dette lille script:

Set Executor = Server.CreateObject("ASPExec.Execute")
Executor.Application = "uptime"
Executor.Parameters = ""
strResult = Executor.ExecuteDosApp
Response.Write "<pre>" & strResult & "</pre>"
Avatar billede Spotgun Seniormester
09. juni 2005 - 22:46 #7
Resultatet du får tilbage ser f.eks. således ud. Det kan du jo altid pynte lidt på, så det ser pænere ud :)

\\SPOT-SERVER has been up for: 7 day(s), 5 hour(s), 30 minute(s), 54 second(s)

Estimate based on last boot record in the event log.
See UPTIME /help for more detail.
Avatar billede totalpc Seniormester
10. juni 2005 - 08:55 #8
Jeg har lige kigget lidt med og prøvet det også.
Men når jeg følger jeres beskrivelse og kører scriptet så får jeg bare fejlen :

Error: Could not create process
Avatar billede Spotgun Seniormester
10. juni 2005 - 09:00 #9
Så har du formentligt ikke fået installeret AspExec korrekt.
Avatar billede totalpc Seniormester
10. juni 2005 - 09:06 #10
Hmm...Jeg har hentet den ned. Kopieret aspexec.dll til winnt\system32 og skrevet regsvr32 aspexec.dll i en dosprompt

Hvordan skal jeg eller gøre og kan jeg på noget måde tjekke om den er installeret rigtigt ?
Avatar billede Spotgun Seniormester
10. juni 2005 - 09:27 #11
har du køret regsvr32 på den maskine der skal afvikle ASP-siden?

Der er jo forskel på om komponenten er blevet registreret på din egen pc eller på din server (hvis du har sådan en selvfølgelig).
Avatar billede totalpc Seniormester
10. juni 2005 - 09:43 #12
Jeg har lavet det på min webserver som jo også kører scriptet. Den er jeg helt med på. tjek http://www.darkzone.dk/cominfo.asp
Der står + udfor aspexec
Avatar billede Spotgun Seniormester
10. juni 2005 - 10:04 #13
Det var da mærkeligt. Kører du med en 2000 eller 2003 server?

Faldt også lige over dette i installationsvejledningen. Er det noget du har checket?:

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 totalpc Seniormester
10. juni 2005 - 10:27 #14
Det har jeg lige gjort. Men stadig fejl.
Men jeg prøvede et at de scripts der følger med.
Http://www.darkzone.dk/aspping.asp
Det virker jo godt nok, men så se
Http://www.darkzone.dk/uptime.asp
Avatar billede totalpc Seniormester
10. juni 2005 - 10:56 #15
jeg har leget lidt med det og prøvet aspexec.asp der følger med, men den giver :
ASPExec ExecuteWinApp Test
Attempting to execute notepad.exe
The result of this call was: Ok
If you do not see Notepad then it is possible that Notepad is running with a hidden window. This could be caused by not having "Allow Service to Interact with Desktop" turned off in Control Panel/Services/World Wide Web Publishing Service or it could be that the version of IIS you are running is preventing the window from being displayed. Look in a task list such as task manager, or use TList from the NT resource kit to see if Notepad is running. Note: All InetInfo managed


I joblisten på min server står der er notepad er startet, men jeg kan ik se notepad vinduet på klient eller server. Jeg har sat den der interact with desktop, men hvorfor katten virker det ik ?
Avatar billede totalpc Seniormester
10. juni 2005 - 11:27 #16
Nu har jeg prøvet noget der hedder dynu.exec og det virker bare med det samme. Det kan hentes på dynu.com og er gratis.
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