File Aufruf im Programm

Amo8

Mitglied
Ich habe versucht ein file.log in einen Ordner aufzurufen in meinen Programm.
Visual Basic:
 Text13.Text = Pfad
Text1.Text = ReadLine("Pfad", -2)
Das funktioniert leider nicht. ReadLine ist eine Funktion, die eine bestimmte Zeile in der Log ausliest. Wenn ich statts des Wortes "Pfad", den eigentlichen Pfad einschreibe funktioniert es einwandfrei. Aber der User soll selbst den Pfad von seinen Computer eingeben, und der steht dann in der Textbox13 drin. Den Aufruf Dialog habe ich auch schon probiert, der führt aber nur bis zum Ordner und nicht zum eigentlichen Log file.
 
Das geht leider auch nicht. Gibt es noch eine andere Möglichkeit das Wort "Pfad" in der Codzeile während der Laufzeit auszutauschen?.
 
Warum verwendest nicht den FileOpenDialog ? Der entspricht dem Windows-Standard und kann z.B. *.log als Vorauswahl annehmen. Sieht dann z.B. so aus:

' In VB 2005 Express
If OpenFileDialog1.ShowDialog() Then TextBox1.Text = OpenFileDialog1.FileName

Alternativ würd ich einfach

strFileName = Text13.Text & "\file.log"
Text1.Text = Readline(strFileName, -2)

anwenden, dann wäre allerdings der FileSeparator hardcodiert und es ist zu vermeiden, daß er nicht doppelt kommt (wenn z.B. Pfad=C:\Temp\ ). Hilfeich wäre noch ne Angabe von Dir: VB6, VB2005 ?
 
Ich verwende vb6, mit dem Dialogaufruf habe ich es auch schon probiert, kam allerdings nur bis zum Ordner. Da in dem Ordner aber mehrere Log-Dateien gespeichert sind ging es nicht.
 
Die Function stammt dort her: http://www.vbarchiv.net/archiv/tipp_970.html, und funktioniert Einwand frei wen der Pfad direkt eingetragen wird.
Da der Pfad auf jeden Computer anders lautet, sollte der User den Pfad persönlich in eine Textbox eingeben und mein Programm sollte wärend der Laufzeit das Word "Pfad" gegen den Textbox-Inhalt vor dem Aufruf der Funktion austauschen. Das klappt leider nicht, deshalb meine Frage: gibt es noch eine andere Möglichkeit als die Textbox. Das mit dem Dialog ging auch nicht.
 
steht in der textbox der Pfad oder der Pfad + Dateiname?
sorry, ist vl. ne dumme frage aber ist mir schon desöfteren passiert.

sollte nur der pfad (sprich ordner) drinstehen, isses logisch wenns nicht geht.
 
Ich sagte ja bereits schon in dem Ordner sind mehrere Logs drin, nur den Ordner angeben hilft nicht. Wen ich statts des Wortes "Pfad" den eigentlichen Pfad eingebe funktioniert es ja Einwand frei. Nur meine Variabel "Pfad" wird nicht ersetzt. das ist das Problem.
 
bau mal noch folgende Prüfung ein:

Visual Basic:
Pfad = Text13.Text
' ab hier kommt jetzt die Ergänzung
dim fso as Object
dim fl as Object

set fso = CreateObject("Scripting.FileSystemobject")
if not fso.FileExists(pfad) then
call msgbox ("Der eingegebene Pfad ist ungültig" & vbcrlf & "Pfad: " & Pfad ,vbexclamation)
else
' hier ist ende der Ergänzung
Text1.Text = ReadLine(Pfad, -2) 

end if  ' das hier musste noch rein ;-)
Grüsse bb
 
Zurück