mayho33
Goto Top

Eigene Klasse in VBSCRIPT erstellen

Hallo Gemeinde!

Vor kurzem habe ich am einem Problem mit Programm- Aufrufen aus externen Sripts und es wurde mit hervorragend von "emeriks" geholfen. Nun habe ich ein neues Problem und hoffe wieder auf euer Fachwissen.

Das Problem:

Wir paketieren im Team systemübergreifend und wollen gewisse Funktionen einheitlich gecodet gestalten. Nicht zuletzt um die Qualität und Sicherheit des Codes zu verbessern. Z.B. den Pfad zu "Startmenü\Programme" herauszufinden. Da gibt es natürlich viele Wege und jeder hat seine eigene Technik dafür die, je nach System und Ersteller, funktioniert oder aber leider auch nicht.

Meine Idee um hier Fehler zu vermeiden ist alle vom System (egal welches) in der Registry abgespeicherten Environmentvariablen auszulesen und diese in einer eigenen Klasse bereitzustellen.

der Aufruf könnte dann lauten:

dim Startmenu : Startmenu = Meineklasse.Startmenü

Ich habe aber keinen Tau wie ich eine Klasse in VBSCRIPT erstelle und diese dann bereitstelle.

Hat eventuell jemand ein kleines Howto oder ein einfaches A-Z Beispiel für mich?

Danke!

lg

Mayho

PS: Wir verwenden durchwegs Programme wie VBSEDIT um die Opjekte einer Klasse komfortabel anzuzeigen

Content-ID: 184633

Url: https://administrator.de/forum/eigene-klasse-in-vbscript-erstellen-184633.html

Ausgedruckt am: 30.12.2024 um 16:12 Uhr

emeriks
emeriks 08.05.2012 um 12:08:29 Uhr
Goto Top
Hi,
google, suchen nach "vbscript class". Da kommt z.B. das raus: http://www.aspheute.com/artikel/20000526.htm

MRX
colinardo
colinardo 08.05.2012 um 12:12:08 Uhr
Goto Top
mayho33
mayho33 08.05.2012 um 12:38:18 Uhr
Goto Top
Danke!! @emeriks und @softmeister

Die Sites hatte ich schon offen und irgendwie ist der Groschen nicht gefallen.

jetzt aber...
'==========================================================================================  
Dim objShell, objFso
Set objShell = WScript.CreateObject("Wscript.Shell")  
Set objFso = WScript.CreateObject("Scripting.FileSystemObject")  

Class EnvVar
  Property Get CommonPrograms
    Common Programs = objShell.RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Common Programs")  
  End Property
  
  Property Get CommonDesktop
    CommonDesktop = objShell.RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Common Desktop")  
  End Property
  
  ...
  ...
  ...
  ...
End Class


Set MyTest = New EnvVar
WScript.Echo MyTest.CommonDesktop

'=================================================================================================  
many THX

lg

Mayho

[Edit Biber] Codeformatierung nachgetragen, aber überflüssiges Leerzeichen bei "Common Programs" stehen lassen [/edit]
mak-xxl
mak-xxl 08.05.2012 um 17:27:40 Uhr
Goto Top
Moin Mayho,

Zitat von @mayho33:
Common Programs = objShell.RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Common Programs")

Bring das n ein wenig näher an das P ... sonst kommt unnötiger Frust auf ...

Viel Erfolg und freundliche Grüße von der Insel - Mario