Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Systemvariable in VBscript integrieren

Frage Entwicklung VB for Applications

Mitglied: RetroDude

RetroDude (Level 1) - Jetzt verbinden

04.06.2010 um 16:26 Uhr, 5628 Aufrufe, 6 Kommentare

Hallo. Ich möchte mit folgendem Script beim Login eines Users einen Ordner in seinem Profil löschen. Dies möchte ich mit der %Username% Variable im Dateipfad tun. Ich schaffe es nicht dieses Objekt in meinen Script zu integrieren. Kann mir da mal einer unter die Arme greifen? Danke!


set WshShell = WScript.CreateObject("WScript.Shell")
UserName = WshShell.ExpandEnvironmentStrings("%Username%")

Dim fso

Set fso = CreateObject("Scripting.FileSystemObject")


Delete C:\Documents and Settings\%Username%\Application Data\Programm\Ordner\Cache
Wscript.Quit

Sub Delete( Strfolder)
On Error Resume Next
Dim Folder
Set Folder = fso.GetFolder(StrFolder)

For Each SubFolder in Folder.SubFolders
Delete SubFolder
If Folder.Attributes And 1 Then
Folder.Attributes = Folder.Attributes - 1
end if
SubFolder.Delete
Next

For Each File in Folder.Files
If File.Attributes And 1 Then
File.Attributes = File.Attributes - 1
End If
File.Delete
Next
End Sub
Mitglied: Karo
04.06.2010 um 16:36 Uhr
statt "Delete .....'

FSO.DeleteFolder("C:\Documents and Settings\" & Username & "\Application Data\Programm\Ordner\Cache")

Karo
Bitte warten ..
Mitglied: bastla
04.06.2010 um 18:13 Uhr
... und noch als Hinweis: Anstelle des Zusammensetzen des Pfades über %USERNAME% würde sich eigentlich %APPDATA% anbieten (oder zumindest %USERPROFILE%) ....

Eine Übersicht über die zur Verfügung stehenden Variablen lässt sich von der Kommandozeile mit dem Befehl "set" aufrufen.

Grüße
bastla
Bitte warten ..
Mitglied: RetroDude
08.06.2010 um 17:06 Uhr
Hallo Zusammen

Habe es folgendermassen gemacht:

Set fso = CreateObject("Scripting.FileSystemObject")
strLeft = "C:\Documents and Settings\"
strRight = "\Application Data\Applikation\Cache"

Delete strLeft& UserName& strRight

Habe den String einfach geteilt und korrekt übergeben. Habt ihr noch Verbessrungsvorschläge? Die Setvariablen sind mir schon bekannt , wieso würdest Du das denn mit %Appdata% machen Bastla?

Danke und Gruss

retrodude
Bitte warten ..
Mitglied: bastla
08.06.2010 um 17:17 Uhr
Hallo RetroDude!

Die Verwendung von Systemvariablen macht das Script flexibler (sollte so unter verschiedenen BS bzw Sprachen funktionieren):
01.
Set ws = CreateObject("WScript.Shell") 
02.
AppData = ws.ExpandEnvironmentStrings("%APPDATA%")
Grüße
bastla
Bitte warten ..
Mitglied: RetroDude
09.06.2010 um 08:46 Uhr
Hallo

Du meinst wohl, man hätte den String noch etwas einfacher gestalten können gell? Danke für den Input. Deine Antworten sind immer sehr kompetent und treffsicher.

Gruss
retrodude
Bitte warten ..
Mitglied: bastla
09.06.2010 um 10:23 Uhr
Hallo RetroDude!
strLeft = "C:\Documents and Settings\"
Dieser Teil des Pfades könnte ja auch "C:\Dokumente und Einstellungen\" oder "C:\Users\" lauten - was Dein Script aber gar nicht wissen muss, wenn der (gesamte) Pfad vom System geliefert wird ...

Grüße
basla
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst VBScript und OR (5)

Frage von Invisan zum Thema VB for Applications ...

Windows Server
Zweiten DNS Server ins AD integrieren (24)

Frage von Akcent zum Thema Windows Server ...

LAN, WAN, Wireless
Dlink als WLAN Client ins netz integrieren (22)

Frage von fundave3 zum Thema LAN, WAN, Wireless ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Rechtliche Fragen
Hotspot rechtssicher betreiben? (14)

Frage von xSiggix zum Thema Rechtliche Fragen ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (14)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (12)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...