Avatar billede renolde_dk Nybegynder
14. juli 2004 - 10:41 Der er 7 kommentarer

Undgå entries i Systemlogen ved runtime errors

Jeg har lavet et lille program som undersøger en remote server for om en bestemt hotfix er installeret.

Jeg vil gerne undgå at der kommer fejlmeddelelser i windows systemlog når den prøver at kontakte en server der ikke eksistere.

Eksempel på fejl i loggen:

DCOM was unable to communicate with the computer sdf using any of the configured protocols.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.


Er det muligt at slå al skrivelse til windows logfiler fra?
Avatar billede medions Nybegynder
14. juli 2004 - 10:46 #1
Har du prøvet at tilføje:
On Error Resume Next

//>Rune
Avatar billede renolde_dk Nybegynder
14. juli 2004 - 10:52 #2
Ja det har jeg i starten af koden.
Men det hjælper ikke på at den kommer med runtime fejl.

Jeg skriver lige koden herunder hvis det er til nogen hjælp:

On Error Resume Next
installed=false
strComputer =  InputBox ("Enter IP or Systemname")
WScript.Timeout = 3
hotFixName = "KB820291"
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colQuickFixes = objWMIService.ExecQuery _
    ("Select * from Win32_QuickFixEngineering")
For Each objQuickFix in colQuickFixes
    if objQuickFix.HotFixID = hotFixName Then
        installed=true
        Wscript.Echo "Hot Fix ID: " & objQuickFix.HotFixID & " Installed on "& objQuickFix.CSName


   
    end if
   
Next

if err.number <>0 then
    if err.number=451 then
        wscript.echo "Ikke gyldig ip adresse"   
    end if
    wscript.echo err.number

end if

    if installed = false Then
    WScript.Echo "Hot Fix ID: " & hotFixName & " is NOT Installed on "& strComputer
    end if


Fejlen kommer hvis jeg ikke angiver en gyldig ip adresse
Avatar billede medions Nybegynder
14. juli 2004 - 11:39 #3
Hvor stort er netværket?
For det kunne jo godt lade sig gøre at indhente alle IP adresserne på netværket og smide dem i et Array, og så bagefter sammenligne dem. Så har du selv styr over fejlmeddelserne samt dem der går igennem og dem der ikke må gå igennem osv. osv.

//>Rune
Avatar billede renolde_dk Nybegynder
14. juli 2004 - 12:04 #4
Det er et stort netværk.
Et par hundrede computere vel. De er lokaliseret over hele verden.

Vil på sigt lave en udgave hvor iperne bliver hentet ind fra en tekstfil. Men nu er jeg ved at lave en mindre udgave, som er mere fleksibel hvor man selv kan indtaste ipadressen.

Det jeg mangler er at få vbscriptet til at lade være med at skrive til windows systemloggen lige meget hvilken fejl der kommer.

Ellers skal jeg først checke for om den kan skabe kontakt til computeren. Og hvis den ikke kan det skal den ikke generere en fejl men bare skrive en meddelelse om at den ikke kan nå computeren og derefter stoppe scriptet.

Men jeg ved ikke hvordan jeg evt. kan checke for om computeren eksistere.
Avatar billede bfjmnemonic Nybegynder
12. august 2004 - 22:25 #5
Hvad betyder "WScript.Timeout = 3" ??? Kan ikke finde det i dokumentationen?
Avatar billede renolde_dk Nybegynder
12. august 2004 - 22:29 #6
WScript.Timeout gør at scriptet slutter efter x antal sekunder. Der står lidt om det her: http://www.devguru.com/Technologies/wsh/quickref/wscript_Timeout.html
Avatar billede renolde_dk Nybegynder
05. juli 2005 - 13:54 #7
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