[vbs]Uitlezen van virusscanner versie in registry

Pagina: 1
Acties:

  • coldasice
  • Registratie: September 2000
  • Laatst online: 07:15

coldasice

business intelligence

Topicstarter
Ik ben bezig met het schrijven van een tooltje dat wordt uitgevoerd bij het inloggen op het netwerk dat de versie van Mekefie uitleest zodat wij eenvoudig in een database kunnen controleren bij wie het updaten van de virusdefinities mis gaat ivm de vele virussen tegenwoordig....

maar schijnbaar wil hij niet luisteren

code:
1
2
3
4
5
Set Shell = CreateObject("WScript.Shell")

ProductID = Shell.RegRead("HKLM\SOFTWARE\Network Associates\TVD\VirusScan Enterprise\CurrentVersion\")

WScript.Echo(vbCrLf & "szVirDefDate" & ProductID)


Dan krijg ik de melding dat hij de directory niet kan openen om deze te lezen
code 80070002
Bron: WshShell.RegRead

ik heb al vanalles geprobeerd...ook zonder / op het einde maar het schijnt niet te werken....ik heb gewoon leesrechten op die sleutels maar het werkt niet...

weet iemand waar dit aan ligt

business-intelligence.info/freelance


  • coldasice
  • Registratie: September 2000
  • Laatst online: 07:15

coldasice

business intelligence

Topicstarter
ik heb inmiddels de foutmelding gevonden...het ligt waarschijnlijk aan dat er een spatie in de sleutel zit....weet iemand hoe ik deze kan omzeilen

code:
1
2
3
4
5
Set Shell = CreateObject("WScript.Shell")

ProductID = Shell.RegRead("HKLM\SOFTWARE\Network" & Space(1) & "Associates\TVD\VirusScan" & Space(1) & "Enterprise\CurrentVersion")

WScript.Echo(vbCrLf & "szVirDefDate" & ProductID)

business-intelligence.info/freelance


  • 12_0_13
  • Registratie: April 2004
  • Laatst online: 12-02 13:19
Is een \ geen escape character?? Ander smoet je natuurlijk \\ gebruiken :)

  • coldasice
  • Registratie: September 2000
  • Laatst online: 07:15

coldasice

business intelligence

Topicstarter
ik heb inmiddels uitgevonden dat het op een hele fout manier wel redelijk gaat
code:
1
2
3
4
5
6
7
8
9
10
11
12
Set Shell = CreateObject("WScript.Shell")
Dim Sleutel

Sleutel = "HKEY_LOCAL_MACHINE\SOFTWARE\Network Associates\TVD\VirusScan Enterprise\CurrentVersion\"
On Error resume next
ProductID = Shell.RegRead(Sleutel & "szVirDefDate")
If Err.Number <> 0 Then
   MsgBox("Key existed")
Else
   MsgBox("Key did not exist")
End If
WScript.Echo(vbCrLf & "szVirDefDate" & ProductID & "blaat")


Nu komt hij eerst met de melding...key does not exist

Daarna komt hij met de juiste datum tussen szvirdefdat en blaat.....

8)7 8)7 8)7 8)7 8)7 8)7

business-intelligence.info/freelance


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:00

gorgi_19

Kruimeltjes zijn weer op :9

Erhm.... Wie zegt dat de foutmelding daarmee te maken heeft? Er kunnen meerdere foutmeldingen optreden dan alleen: "Key niet gevonden"

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • coldasice
  • Registratie: September 2000
  • Laatst online: 07:15

coldasice

business intelligence

Topicstarter
12_0_13 schreef op 04 mei 2004 @ 10:25:
Is een \ geen escape character?? Ander smoet je natuurlijk \\ gebruiken :)
bij jscript is dit het geval....

business-intelligence.info/freelance


  • coldasice
  • Registratie: September 2000
  • Laatst online: 07:15

coldasice

business intelligence

Topicstarter
nu heb ik de msgBox in de else vervangen door Err.Number...

dan krijg je de foutmelding nummer 0......AAARGH!!!!

business-intelligence.info/freelance


  • coldasice
  • Registratie: September 2000
  • Laatst online: 07:15

coldasice

business intelligence

Topicstarter
ik heb de on error resume next en if else dingen weggelaten en nu doet hij het....

iedereen bedankt voor de bijdrage...

business-intelligence.info/freelance


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Ermmm... Wij zijn blij dat je het probleem gevonden hebt... En met ons gedeeld hebt!!!!


Maarhe er zit een edit knop bij elke post! 8)7

Programmer - an organism that turns coffee into software.


Verwijderd

lottumracing schreef op 04 mei 2004 @ 10:58:
nu heb ik de msgBox in de else vervangen door Err.Number...

dan krijg je de foutmelding nummer 0......AAARGH!!!!
Ik weet niet wat je allemaal bedoelt maar na de ELSE is Err.Number inderdaad 0 (nul) want in je IF statement test je op: Err.Number <> 0

edit:
Oeps te laat, blijkbaar heb je het zelf ook al ontdekt.

[ Voor 11% gewijzigd door Verwijderd op 04-05-2004 11:05 ]

Pagina: 1