hey blacky,
vielen dank für den code. hab ihn allerdings noch nicht getestet und so wie er dort geschrieben ist kann ich ihnr ohne zu testen nicht wirklich lesen oder verstehen.
gestern hab ich mit nem freund noch daran gesessen und er ist der meinung, daß das was ich schon geprogt hab gar nicht so schlecht ist.
sag doch mal bitte dein meinung dazu.
'senden des befehls dir
private sub comDir_click()
INet1.Execute , "Dir"
end sub
'nach dem senden vom Server tritt Status 12 ein.
Private Sub Inet1_StateChanged(ByVal State As Integer)
if State = 12 then
dim varGetChunk as Variant
dim strGetChunk as String
dim bolGetChunk as boolen
dim strName as String
dim intPosBeg as Integer: intPosBeg = 1
dim intPosEnd as Integer
varGetChunk = INet.GetChunk(1024, 0)
Do While Not bolGetChunk
strGetChunk = strGetChunk & varGetChunk
varGetChunk = INet.GetChunk(1024, 0)
if len(varGetChunk) = 0 then
bolGetChunk = True
end if
Loop
if strGetChunk <> "" then
bolGetChunk = False
Do While Not bolGetChunk
intPosEnd = instr(intPosBeg, strGetChunk, chr(13))
strName = mid(strGetChunk, intPosBeg, intPosEnd - intPosBeg)
'nun hab ich den Datei, bzw. den Folder-Namen
if mid(strName, len(strName), 1) = "/" then 'prüfen ob datei
' oder folder
'hier in TreeView adden
end if
'hier in alles in ein ListView adden.
intPosBeg = intPosEnd + 2 '+2 sind diese 2 platzhalter
if intPosBeg >= len(strGetChunk) then
bolGetChunk = False
end if
Loop
end if
end if
End Sub so, das hab ich mir jetzt mal aus meinem kopf (ohne es zu testen) geschrieben und hoffe es ist richtig und verständlich.
noch mal zu meiner frage:
nehme ich so den string am elegantesten auseinander? oder gibt es eine bessere möglichkeit. leider weiß ich nicht wie ich den Split hierauf anwenden muß, ist es den eine besser möglichkeit?
falls es immer noch unverständlich ist, bitte ich das zu entschuldigen. für diesen fall habe ich mal schnell code zusammengestellt, den man nur noch in ein projekt einfügung muß sowie die dazu gehörenden steuerelemente. es werden folgende elemente hierfür gebraucht:
1 Form
4 Textboxen
4 Labels
2 Button
1 RichTextBox
1 INet-Steuerelemen (Microsoft Internet Transfer Control)
nur die eigenschaft .AutoRedraw der Label´s muß auf True gesetzt werden, ansonste müßte funktionieren.
außerdem benötigt man einen ftp-server zu dem man sich dann verbinden kann, selbst hab ich es nicht testen können, da ich hier nicht rauskomme........firewall
Private Sub Command1_Click()
Inet1.URL = " ftp://" & Text1.Text
Inet1.UserName = Text2.Text
Inet1.Password = Text3.Text
Inet1.Execute , "Dir"
End Sub
Private Sub Command2_Click()
End
End Sub
Private Sub Form_Load()
Me.Width = 7000
Me.Height = 6500
Label1.Caption = "URL"
Label2.Caption = "User"
Label3.Caption = "Pass"
Text1 = ""
Text2 = ""
Text3 = ""
Text4 = ""
Command1.Caption = "Verbinden"
Command2.Caption = "Beenden"
Label1.Left = 100
Label1.Top = 300
Label2.Left = 100
Label2.Top = 800
Label3.Left = 100
Label3.Top = 1300
Label4.Left = 3200
Label4.Top = 2000
RichTextBox1.Left = 100
RichTextBox1.Top = 2000
RichTextBox1.Height = 2500
RichTextBox1.Width = 3000
Text1.Left = 1000
Text1.Top = Label1.Top
Text2.Left = 1000
Text2.Top = Label2.Top
Text3.Left = 1000
Text3.Top = Label3.Top
Text4.Left = 100
Text4.Top = 4600
Text4.Width = 6000
Command1.Left = Text1.Left + Text1.Width + 100
Command1.Top = Text1.Top
Command2.Left = Me.Width - (Command2.Width + 200)
Command2.Top = Me.Height - (Command2.Height + 500)
End Sub
Private Sub Inet1_StateChanged(ByVal State As Integer)
If State = 12 Then
Dim varGetData As Variant
Dim strGetData As String
Dim bolGetData As Boolean: bolGetData = False
varGetData = Inet1.GetChunk(1024, 0)
Do While Not bolGetData
strGetData = strGetData & varGetData
varGetData = Inet1.GetChunk(1024, 0)
If Len(varGetData) = 0 Then
bolGetData = True
End If
Loop
Label4.Caption = strGetData
RichTextBox1 = strGetData
Text4 = strGetData
End If
End Sub mir kommt es jetzt darauf an, wie ich die rückgabe richtig bearbeite.
der string erscheint so wie er ankommt in der untersten textbox.
allein nur für das lesen bedanke ich mich schon
gruß
daniel A. |