Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Bitte um Hilfe bei VBS-Script

Kolti / 11 Antworten / Baumansicht Nickles

Ich möchte den Namen des Ordners abfragen, in welchem die Gemeinsamen Dateien sind.
Aber er mag mich nicht.
Kann mir das bitte einer korrigieren?

Dim objWinShell
Set objWinShell = CreateObject("Shell.Application")
msgbox objWinShell.NameSpace(&H2B)

Die msgbox bringt eine Fehlermeldung.
Wenn ich sie dim, dann kommt Typenunverträglichkeit.

Danke.

bei Antwort benachrichtigen
T-Rex Kolti „Bitte um Hilfe bei VBS-Script“
Optionen
Option Explicit

Const COMMON_FILES = &H2B&

Dim objSHell, objFolder

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.NameSpace(COMMON_FILES)
WScript.Echo objFolder.Items.Item.Path
Set objFolder = Nothing
Set objShell = Nothing
 GrüßeT-Rex 
bei Antwort benachrichtigen
Kolti T-Rex „Option Explicit Const COMMON_FILES H2B Dim objSHell, objFolder Set objShell...“
Optionen

Zeile 9 Objekt erforderlich.

Deswegen läuft auch das andere nicht.

Kann es sein, das meine WSH-Umgebung nicht OK ist?

bei Antwort benachrichtigen
T-Rex Kolti „Laufzeitfehler“
Optionen

Ich habe den Code bei mir ausprobiert, da funktionierte er. Allerdings habe ich das Script als Parameter von wscript aufgerufen.
Welche Zeile ist denn Zeile 9?

 GrüßeT-Rex 
bei Antwort benachrichtigen
Kolti T-Rex „Ich habe den Code bei mir ausprobiert, da funktionierte er. Allerdings habe ich...“
Optionen

WScript.Echo objFolder.Items.Item.Path


Das ist das Objekt.
Sowas funktioniert zB.

set shell = CreateObject("Shell.Application")
shell.MinimizeAll
MsgBox "Klicken Sie auf OK, wenn Sie die Fenster zurückhaben möchten!"
shell.UndoMinimizeAll

bei Antwort benachrichtigen
T-Rex Kolti „WScript.Echo objFolder.Items.Item.Path Das ist das Objekt. Sowas funktioniert...“
Optionen

Dann ersetze mal WScrip.Echo durch MsgBox

 GrüßeT-Rex 
bei Antwort benachrichtigen
Kolti T-Rex „Dann ersetze mal WScrip.Echo durch MsgBox“
Optionen

habe ich schon.
geht auch nicht.

Habe auch schon Script 5.6 installiert.
Nutzt nix.

Ich muß irgend wie diesen blöden Ordner rauskriegen, da der auf deutschen und englischen Computern andere Namen hat.

bei Antwort benachrichtigen
T-Rex Kolti „habe ich schon. geht auch nicht. Habe auch schon Script 5.6 installiert. Nutzt...“
Optionen

Auf meiner Kiste gibt es eine Umgebungsvariable dafür:
Echo %CommonProgramFiles%
Schau mal bei Dir nach.

 GrüßeT-Rex 
bei Antwort benachrichtigen
Kolti T-Rex „Auf meiner Kiste gibt es eine Umgebungsvariable dafür: Echo CommonProgramFiles...“
Optionen

Bei Win98SE gibt es diese Variable nicht.
Deswegen ja meine Probleme.

Dennoch danke für Deine Hilfe.

bei Antwort benachrichtigen
T-Rex Kolti „Bei Win98SE gibt es diese Variable nicht. Deswegen ja meine Probleme. Dennoch...“
Optionen

Hm, dann muß ich passen.
Du könntest Dir eine eigene ActiveX-DLL zusammenzimmern (lassen), die die gewünschten Informationen ausliest. Aber das ist reichlich oversized.

 GrüßeT-Rex 
bei Antwort benachrichtigen
Kolti T-Rex „Hm, dann muß ich passen. Du könntest Dir eine eigene ActiveX-DLL...“
Optionen

aber das ist ja nicht alles.

Ich brauche auch den CSIDL-Wert.
Und dann habe ich das gleiche Problem.

Werde mal durch VBS-Foren durchsausen.

Danke.

bei Antwort benachrichtigen
gelöscht_35042 Kolti „Bitte um Hilfe bei VBS-Script“
Optionen

Grüß dich Kolti,

Freue mich, dass du wieder da bist.....

Gruß
luttyy

bei Antwort benachrichtigen