Top-Themen

Aktuelle Themen (A bis Z)

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 Im script ein befehl aus einer txt auf dem server holen

Mitglied: charmeur

charmeur (Level 1) - Jetzt verbinden

02.08.2011 um 23:50 Uhr, 2771 Aufrufe, 10 Kommentare

hallo ihr ich bins mal wieder gg nun mal wieder etwas anderes hier habe ich noch ein code gebastelt (dank euch gg)
nun hätte ich da eine frage
es wird für verschiedenen optionen eine txt datei auf dem server angelegt, dies wäre nicht nötig wenn ich in der lage wäre
wenn ich wüsste wie man aus einer txt datei eine bestimmte zeile auslesen könnte, hätte da jemand eine idee ?
01.
Option Explicit 
02.
Dim oXL 
03.
Dim txt 'As String 
04.
Dim txt1 'As String 
05.
Dim txt2 'As String 
06.
Dim txt3 'As String 
07.
Dim txt4 'As String 
08.
Dim txt5 'As String 
09.
 
10.
Dim WshShell 
11.
Dim iReturn 
12.
Dim sMessage, sTitel, sTitel1 
13.
 
14.
txt = DownloadString("http://tspoint.......info.txt")  
15.
txt1 = DownloadString("http://tspoint......./info1.txt")  
16.
txt2= DownloadString("http://tspoint.......Programm.txt") 
17.
txt3= DownloadString("http://tspoint.......Fenstertitel.txt") 
18.
txt4= DownloadString("http://tspoint......./Fenstertitel1.txt") 
19.
txt5= DownloadString("http://tspoint.......test..txt") 
20.
 
21.
'Fenstertitel 
22.
sTitel = txt3 
23.
sTitel1 = txt4  
24.
 
25.
If not txt = "" Then  
26.
sMessage = txt 
27.
 
28.
Set WshShell = CreateObject("WScript.Shell") 
29.
 
30.
iReturn = WshShell.Popup(sMessage,txt5 , sTitel, vbInformation ) 
31.
End If  
32.
 
33.
 
34.
Select Case iReturn 
35.
Case -1 
36.
sMessage = txt1 
37.
End select 
38.
'WshShell.Popup sMessage, ,dddd  
39.
 
40.
If not txt1 = "" Then  
41.
'msgbox txt1 
42.
 
43.
iReturn = WshShell.Popup(txt1,0 , sTitel1, vbInformation ) 
44.
 
45.
End If  
46.
 
47.
Public Function DownloadString(ByVal URL) 'As String   
48.
Dim WebReq 'As MsXml2.XmlHttp   
49.
Dim FSO 'As Scripting.FileSystemObject   
50.
Set WebReq = CreateObject("WinHttp.WinHttpRequest.5.1") 
51.
Set FSO = CreateObject("Scripting.FileSystemObject")   
52.
WebReq.Open "get", URL, False   
53.
WebReq.Send   
54.
DownloadString = WebReq.ResponseText   
55.
 
56.
End Function  
57.
 
58.
If not txt2 = "" Then  
59.
StartApp txt2 
60.
End If  
61.
 
62.
 
Mitglied: rubberman
03.08.2011 um 01:38 Uhr
Hallo charmeur,

du könntest den Inhalt der Datei an den Zeilenumbrüchen in ein Array aufsplitten.
01.
Option Explicit 
02.
 
03.
Dim arrLines 
04.
Dim WshShell 
05.
Dim iReturn 
06.
Dim sMessage, sTitel, sTitel1 
07.
 
08.
arrLines = DownloadArray("http://tspoint.......daten.txt") 
09.
 
10.
If VarType(arrLines) <> vbEmpty Then 
11.
 
12.
  'Fenstertitel 
13.
  sTitel = arrLines(3) 
14.
  sTitel1 = arrLines(4) 
15.
 
16.
  If not arrLines(0) = "" Then 
17.
    sMessage = arrLines(0) 
18.
    Set WshShell = CreateObject("WScript.Shell") 
19.
    iReturn = WshShell.Popup(sMessage, arrLines(5), sTitel, vbInformation) 
20.
  End If 
21.
 
22.
  Select Case iReturn 
23.
    Case -1 
24.
      sMessage = arrLines(1) 
25.
  End select 
26.
   
27.
  If not arrLines(1) = "" Then 
28.
    'msgbox txt1 
29.
    iReturn = WshShell.Popup(arrLines(1), 0, sTitel1, vbInformation) 
30.
  End If 
31.
 
32.
  If not arrLines(2) = "" Then 
33.
    'StartApp arrLines(2) ' Habe ich auskommentiert, weil es keine Routine "StartApp" in deinem Code gibt. 
34.
  End If 
35.
 
36.
End If 
37.
 
38.
Public Function DownloadArray(ByVal URL) 'As String 
39.
  Dim WebReq 'As MsXml2.XmlHttp 
40.
  Dim FSO 'As Scripting.FileSystemObject 
41.
  Set WebReq = CreateObject("WinHttp.WinHttpRequest.5.1") 
42.
  Set FSO = CreateObject("Scripting.FileSystemObject") 
43.
  WebReq.Open "get", URL, False 
44.
  WebReq.Send 
45.
  DownloadArray = Split(WebReq.ResponseText, vbLf) 
46.
End Function
Grüße
rubberman
Bitte warten ..
Mitglied: Friemler
03.08.2011 um 01:44 Uhr
Hallo charmeur,

sowas lässt sich sehr einfach mit einem Objekt der Klasse für Reguläre Ausdrücke (RegExp) machen. Lege zu Testzwecken eine Datei mit folgendem Inhalt an:
01.
Info=Test 
02.
Info1=Test1 
03.
Programm=DasTolleProgramm.exe 
04.
Fenstertitel=Das Tolle Programm 
05.
Fenstertitel1=Ein Fenster des tollen Programms
Im folgenden Script den Pfad in Zeile 3 auf die eben erzeugte Datei setzen:
01.
Const ForReading = 1 
02.
 
03.
strInFile = "E:\Test.txt" 
04.
 
05.
Set objFSO    = CreateObject("Scripting.FileSystemObject") 
06.
Set objInFile = objFSO.OpenTextFile(strInFile, ForReading, False) 
07.
strContent    = objInFile.ReadAll 
08.
objInFile.Close 
09.
 
10.
strInfo          = ReadVarValue(strContent, "Info") 
11.
strInfo1         = ReadVarValue(strContent, "Info1") 
12.
strProgramm      = ReadVarValue(strContent, "Programm") 
13.
strFenstertitel  = ReadVarValue(strContent, "Fenstertitel") 
14.
strFenstertitel1 = ReadVarValue(strContent, "Fenstertitel1") 
15.
 
16.
WScript.Echo strInfo 
17.
WScript.Echo strInfo1 
18.
WScript.Echo strProgramm 
19.
WScript.Echo strFenstertitel 
20.
WScript.Echo strFenstertitel1 
21.
 
22.
 
23.
 
24.
Function ReadVarValue(strFileContent, strVarName) 
25.
  Dim objRegExp, colMatches 
26.
 
27.
  Set objRegExp        = New RegExp 
28.
  objRegExp.Global     = False 
29.
  objRegExp.IgnoreCase = True 
30.
  objRegExp.Pattern    = "(" & strVarName & ")=(.*)" 
31.
 
32.
  Set colMatches = objRegExp.Execute(strFileContent) 
33.
 
34.
  If colMatches.Count > 0 Then 
35.
    ReadVarValue = colMatches(0).SubMatches(1) 
36.
  Else 
37.
    ReadVarValue = "" 
38.
  End If 
39.
End Function
Die Datei wird erstmal komplett in eine Variable eingelesen (Zeile 7). In den Zeile 10 bis 14 wird die Suchfunktion aufgerufen, um den Wert zu ermitteln, der in der eingelesenen Datei bei der angegebenen Variable rechts vom Gleichheitszeichen steht.

In Zeile 30 wird das Suchmuster gesetzt. Der Ausdruck vor und nach dem Gleichheitszeichen wird durch die runden Klammern als Teiltreffer (Submatch) gekennzeichnet. Nachdem mit der Execute-Methode in Zeile 32 die Suche durchgeführt wurde, enthält die Variable colMatches eine Collection mit allen Treffern. Da

  1. in Zeile 28 durch setzen der Global-Eigenschaft auf False festgelegt wurde, dass nur der erste Treffer gefunden werden soll, auf den das Suchmuster passt
  2. es in der Datei für jeden Wert links des Gleichheitszeichens nur eine Zeile gibt, in der er auftritt

wird jedesmal höchstens ein Treffer gefunden, der in colMatches den Index 0 hat. Jeder Treffer, den Execute in die zurückgelieferte Collection einträgt, hat die Eigenschaft SubMatches, die Zugriff auf eine Collection mit Teiltreffern (Submatches) bietet. Der Wert hinter dem Gleichheitszeichen ist im Suchmuster der zweite eingeklammerte Block (.* bedeutet "Alle beliebige Zeichen, beliebig oft"), hat in der SubMatches-Collection also den Index 1. Deshalb kann mit colMatches(0).SubMatches(1) in Zeile 35 auf diesen Wert zugegriffen werden; er wird als Funktionsergebnis zurückgeliefert.

Gruß
Friemler
Bitte warten ..
Mitglied: charmeur
03.08.2011 um 22:22 Uhr
Zitat von charmeur:
hallo ihr ich bins mal wieder gg nun mal wieder etwas anderes hier habe ich noch ein code gebastelt (dank euch gg)
nun hätte ich da eine frage
es wird für verschiedenen optionen eine txt datei auf dem server angelegt, dies wäre nicht nötig wenn ich in der
lage wäre
wenn ich wüsste wie man aus einer txt datei eine bestimmte zeile auslesen könnte, hätte da jemand eine idee ?
01.
> Option Explicit 
02.
> Dim oXL 
03.
> Dim txt 'As String 
04.
> Dim txt1 'As String 
05.
> Dim txt2 'As String 
06.
> Dim txt3 'As String 
07.
> Dim txt4 'As String 
08.
> Dim txt5 'As String 
09.
>  
10.
> Dim WshShell 
11.
> Dim iReturn 
12.
> Dim sMessage, sTitel, sTitel1 
13.
>  
14.
> txt = DownloadString("http://tspoint.......info.txt")  
15.
> txt1 = DownloadString("http://tspoint......./info1.txt")  
16.
> txt2= DownloadString("http://tspoint.......Programm.txt") 
17.
> txt3= DownloadString("http://tspoint.......Fenstertitel.txt") 
18.
> txt4= DownloadString("http://tspoint......./Fenstertitel1.txt") 
19.
> txt5= DownloadString("http://tspoint.......test..txt") 
20.
>  
21.
> 'Fenstertitel 
22.
> sTitel = txt3 
23.
> sTitel1 = txt4  
24.
>  
25.
> If not txt = "" Then  
26.
> sMessage = txt 
27.
>  
28.
> Set WshShell = CreateObject("WScript.Shell") 
29.
>  
30.
> iReturn = WshShell.Popup(sMessage,txt5 , sTitel, vbInformation ) 
31.
> End If  
32.
>  
33.
>  
34.
> Select Case iReturn 
35.
> Case -1 
36.
> sMessage = txt1 
37.
> End select 
38.
> 'WshShell.Popup sMessage, ,dddd  
39.
>  
40.
> If not txt1 = "" Then  
41.
> 'msgbox txt1 
42.
>  
43.
> iReturn = WshShell.Popup(txt1,0 , sTitel1, vbInformation ) 
44.
>  
45.
> End If  
46.
>  
47.
> Public Function DownloadString(ByVal URL) 'As String   
48.
> Dim WebReq 'As MsXml2.XmlHttp   
49.
> Dim FSO 'As Scripting.FileSystemObject   
50.
> Set WebReq = CreateObject("WinHttp.WinHttpRequest.5.1") 
51.
> Set FSO = CreateObject("Scripting.FileSystemObject")   
52.
> WebReq.Open "get", URL, False   
53.
> WebReq.Send   
54.
> DownloadString = WebReq.ResponseText   
55.
>  
56.
> End Function  
57.
>  
58.
> If not txt2 = "" Then  
59.
> StartApp txt2 
60.
> End If  
61.
>  
62.
>  
63.
> 

erst mal danke für die hilfe
aber leuder bekomme ich den fehler 800A000D --- Typen unverträglich
muss ich etwas bei der txt Datei beachten bzw . wie sollte die aussehen?
Bitte warten ..
Mitglied: charmeur
03.08.2011 um 22:46 Uhr
das sript geht so weit danke nur habe ich das problem sobald ich eine eserver adresse angebe (http://...123.txt
gehts leider nicht mehr
Bitte warten ..
Mitglied: rubberman
04.08.2011 um 00:01 Uhr
Hallo charmeur.
Zitat von charmeur:
aber leuder bekomme ich den fehler 800A000D --- Typen unverträglich
muss ich etwas bei der txt Datei beachten bzw . wie sollte die aussehen?

1. Wir kennen den Inhalt deiner Textdatei(en) nicht
2. In der Fehlermeldung steht normalerweise auch die Zeilen- und Zeichennummer, wo der Fehler auftritt...

Grüße
rubberman
Bitte warten ..
Mitglied: charmeur
04.08.2011 um 00:27 Uhr
Zitat von rubberman:
Hallo charmeur.
> Zitat von charmeur:
> ----
> aber leuder bekomme ich den fehler 800A000D --- Typen unverträglich
> muss ich etwas bei der txt Datei beachten bzw . wie sollte die aussehen?
>
1. Wir kennen den Inhalt deiner Textdatei(en) nicht
2. In der Fehlermeldung steht normalerweise auch die Zeilen- und Zeichennummer, wo der Fehler auftritt...

Grüße
rubberman

ok da hast recht also
in der txt steht in der ersten zeile ein datum dann der name und anschliessend noch mal nen datum
und der fehler laut fehlerbild ist in Zeile 19 Zeichen 5
Bitte warten ..
Mitglied: rubberman
04.08.2011 um 00:41 Uhr
Dann beziehst du dich offensichtlich auf mein Script?!

Dann noch mal kurz zur Erklärung:
Das script splittet die Textdai in ein Array namens "arrLines"
In "arrLines(0)" findest du die erste Zeile der Datei ... in "arrLines(5)" die sechste Zeile (analog den ursprünglichen 6 Textdateien in deinem Ausgangsscript).
In Zeile 19 meines Scripts erwartet das Popup in "arrLines(5)" einen numerischen Wert (Zeit, wie lang das Popup angezeigt werden soll). Existiert in deiner Textdatei keine 6. Zeile bzw steht in dieser Zeile keine Zahl, wirst du diese Fehlermeldung bekommen.

Grüße
rubberman
Bitte warten ..
Mitglied: charmeur
04.08.2011 um 01:29 Uhr
Zitat von rubberman:
Dann beziehst du dich offensichtlich auf mein Script?!

Dann noch mal kurz zur Erklärung:
Das script splittet die Textdai in ein Array namens "arrLines"
In "arrLines(0)" findest du die erste Zeile der Datei ... in "arrLines(5)" die sechste Zeile (analog den
ursprünglichen 6 Textdateien in deinem Ausgangsscript).
In Zeile 19 meines Scripts erwartet das Popup in "arrLines(5)" einen numerischen Wert (Zeit, wie lang das Popup
angezeigt werden soll). Existiert in deiner Textdatei keine 6. Zeile bzw steht in dieser Zeile keine Zahl, wirst du diese
Fehlermeldung bekommen.

Grüße
rubberman

ach so ok hat soweit funktioniert ... sorry für mein unwissen
nun hätte ich da noch eine frage und zwar hast du in zeile 33
" ) ' Habe ich auskommentiert, weil es keine Routine "StartApp" in deinem Code gibt." geschrieben
was müsste man den da noch haben das ich ein programm starten kann?
Bitte warten ..
Mitglied: rubberman
04.08.2011 um 01:41 Uhr
Die Run Method á la
    WshShell.Run arrLines(2)
Grüße
rubberman
Bitte warten ..
Mitglied: charmeur
04.08.2011 um 01:55 Uhr
Super vielen lieben dank
Bitte warten ..
Ähnliche Inhalte
Windows Server
Zeit von beliebigen Server holen
Frage von Thor01Windows Server10 Kommentare

Hallo, nachdem ich mich jetzt längere Zeit mit NTP beschäftigt habe, ist noch eine Frage aufgetaucht. Ich habe einen ...

Linux
2. ip von dhcp server holen
Frage von LinuxpietLinux14 Kommentare

Hallo, wenn ich ein Gerät (Ethernetdevice) an den Router anstecke erhalte ich, weil dhcp vorgewählt, automatisch eine neue ip ...

Ausbildung

Script für die Auswertung einer TXT datei unter Windows

Frage von Fl0wMAGAusbildung6 Kommentare

Hallo liebe Leute, ich hoffe ich bin hier im richitgen Forum gelandet. Kurz zu mir: Ich habe gerade eine ...

Batch & Shell

Inhalt einer .txt per Script bearbeiten

gelöst Frage von hanni007Batch & Shell2 Kommentare

Hallo Mitstreiter! Habe zu dieser Sache leider keinen alten Beitrag gefunden. Mein Problem ist daher folgendes: Ich habe eine ...

Neue Wissensbeiträge
Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 17 StundenSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 23 StundenWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

iOS
Updates für Iphone und Co
Information von sabines vor 1 TagiOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 2 TagenWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Heiß diskutierte Inhalte
Batch & Shell
Powershell: Im AD nach Rechnern mit bestimmten IP-Adressen suchen
gelöst Frage von Raven42Batch & Shell36 Kommentare

Hallo zusammen, ich suche nach einer Möglichkeit nach Computern im AD zu suchen , deren IP-Adresse mit 10.11.12. beginnt. ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++34 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless25 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

Windows Server
Alten DC entfernen
Frage von smartinoWindows Server24 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...