[B] Builder source vom Tutorial Verfasst am: 04.08.2007, 08:40
Da soviele scheinbar mit meinem Tutorial nicht zurecht kommen, poste ich euch mal den source als nette Funktion.
Builder:
Code:
' ==================================================================
' Simple Builder Example coded by ZiG for vb-x.org
'
' Feel free to use this source.
' ==================================================================
Option Explicit
Public Function Build_server(ByVal Savepath As String) As Boolean
On Error GoTo Err:
'Loading Ressource
Dim buffer() As Byte
buffer = LoadResData(101, "CUSTOM")
'Saving Ressource
Open Savepath For Binary As #1
Put #1, , buffer()
Close #1
'Appending Informations/Options to the server
Dim options As String * 100
options = Text1.Text & "#" & Text2.Text & "#"
Open Savepath For Binary As #1
Put #1, LOF(1) + 1, options
Close #1
Build_server = True
Exit Function
Err:
Build_server = False
End Function
Server:
Code:
' ==================================================================
' Server Example
' ==================================================================
Option Explicit
Private Sub Form_Load()
Dim options As String, cmd() As String
options = Get_Options(App.Path & "\" & App.EXEName)
If Len(options) <> 0 Then
cmd() = Split(options, "#")
'cmd(0) is Text1.Text
'cmd(1) is Text2.Text
Else
GoTo Err:
End If
Exit Sub
Err:
'Error
End Sub
Public Function Get_Options(ByVal Filepath As String) As String
On Error GoTo Err:
Dim options As String * 100
Open Filepath For Binary As #1
Get #1, (LOF(1) - 99), options
Get_Options = options
Err:
End Function
Wenn irgendwo ein Fehler ist, dann bitte melden.
Fragen bitte nur in der Sektion "Fragen und Antworten" stellen.
hf, ZiG _________________ Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
Zuletzt bearbeitet von ZiG_ am 15.11.2007, 12:05, insgesamt 2-mal bearbeitet
Danke erstmal.
Ich möchte nicht unbedingt sowas nachbauen aber interessant ist das ding allemale !!
Neija ich werde mir den "Source" mal genau anschauen !
mfg Star _________________
Eddy-K_ Newbie
Anmeldedatum: 04.10.2007 Beiträge: 4
Verfasst am: 04.10.2007, 23:50
cmd(0) Is Text1.Text ?
ich würd sagen:
text1.text = cmd(0)
oder liege ich falsch?
ZiG_ Überflieger
Anmeldedatum: 07.03.2007 Beiträge: 1248
Verfasst am: 05.10.2007, 00:05
Klar liegst du richtig.
Das soll aber nur als Information dienen für euch, damit ihr wißt bei welchem Index welche Info drinnen ist.
Aber in Text1.Text übergeben ist natürlich nicht richtig. In einem Server sollte es keine Form bzw. eine Textbox geben.
Ich weiß ist verwirrend. ^^ _________________ Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
chaozz_ Tutorial Leser
Anmeldedatum: 28.08.2007 Beiträge: 31
Verfasst am: 06.10.2007, 10:03
HI, wie man sehen kann, bin recht neu, hätte aber trotzdem eine Frage:
Was muss man dann per binary Zugriff in den Server(die Exe Datei) schreiben, damit der z.B. eine Datei runterlädt? Muss man dazu assembler oder sowas können? _________________ spiderschwein, spiderschwein
ZiG_ Überflieger
Anmeldedatum: 07.03.2007 Beiträge: 1248
Verfasst am: 06.10.2007, 11:49
Man schreibt keinen extra code an die Datei dran.
Man übergibt nur bestimmte Informationen, die der server dann ausliest und verwenden kann. _________________ Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
chaozz_ Tutorial Leser
Anmeldedatum: 28.08.2007 Beiträge: 31
Verfasst am: 06.10.2007, 12:32
Und wie genau funktioniert das, dass man den Server zum Beispiel eine Datei löschen lässt? _________________ spiderschwein, spiderschwein
ZiG_ Überflieger
Anmeldedatum: 07.03.2007 Beiträge: 1248
Verfasst am: 06.10.2007, 13:25
Indem du den server so programmierst, dass er das kann.
Mit dem Builder kannst du dann z.B. den Pfad zu der Datei noch an den server dranhängen.
Den kann dan der server auslesen und weiß somit welche Datei er löschen soll. _________________ Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
nom_ Banned
Anmeldedatum: 15.09.2007 Beiträge: 75
Verfasst am: 08.10.2007, 12:23
hmm leider ist das sehr unsicher. Dann muss man doch nur die exe im Texteditor öffnen und hinten nach schaun, dann sieht man ja wohin der server connectet.
mfg
nom
ZiG_ Überflieger
Anmeldedatum: 07.03.2007 Beiträge: 1248
Verfasst am: 08.10.2007, 12:53
Tja. Hier gehts ja auch nur um den Builder.
Wenn du was professionelles willst, dann verschlüsselst du es klarerweise noch.
Außerdem sucht man als coder nach eigenen Lösungen und jammert nicht rum, weil die Beispiele nicht alles erfüllen was man haben will. _________________ Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
nom_ Banned
Anmeldedatum: 15.09.2007 Beiträge: 75
Verfasst am: 08.10.2007, 12:57
tu ich ja nicht war ja nur ein gedanke. Entschuldigung...
wie könnte man es denn anders machen? _________________ spiderschwein, spiderschwein
KillAV_ Newbie
Anmeldedatum: 29.09.2007 Beiträge: 3
Verfasst am: 14.10.2007, 20:16
Habe jetzt alles wie im Tut gemacht doch beim Server zeigt sich keine änderung.
KillAV_ Newbie
Anmeldedatum: 29.09.2007 Beiträge: 3
Verfasst am: 14.10.2007, 20:53
Ok geht jetzt alles.
Hatte nämlich ne kleine Verschlüsslung eingebaut.
Und damit gabs PRobleme.
Aber jetzt geht GottSei Dank wieder alles.
krallistic_ Newbie
Anmeldedatum: 24.09.2007 Beiträge: 13
Verfasst am: 19.12.2007, 17:41
ZiG hat Folgendes geschrieben:
(...)
options = Text1.Text & "#" & Text2.Text & "#"
Open Savepath For Binary As #1
Put #1, LOF(1) + 1, options
(...)
müsste es nich LOF(1) +2 heißen da du ja 2 Infos dranhängst?
ZiG_ Überflieger
Anmeldedatum: 07.03.2007 Beiträge: 1248
Verfasst am: 19.12.2007, 17:45
Nein es heißt LOF(1)+1, weil er ans Ende der Datei springt, den Zeiger dann noch um 1 weiter bewegt und erst ab dieser Position die Informationen anhängt/schreibt.
Hat also nichts damit zu tun wieviele Infos man anhängen will. _________________ Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
krallistic_ Newbie
Anmeldedatum: 24.09.2007 Beiträge: 13
Verfasst am: 19.12.2007, 17:48
ahhh wusste nicht das dass ein pointer ist ^^ ...dacht des wäre eine funktion zum vergrösern der datei ..ok thx für die schnelle antwort
regenz11_ Coder
Anmeldedatum: 29.07.2007 Beiträge: 77
Verfasst am: 10.03.2008, 12:34
So...
Ich habe mir dein cooles Tutorial durchgelesen !
Richtig geil !
Ich habe aber ein Problem:
Also ich bin so vorgegangen:
Ich habe eine Builder.exe !
Die enthält 2 Textboxen und folgenden Code:
Zitat:
' ==================================================================
' Simple Builder Example coded by ZiG for vb-x.org
'
' Feel free to use this source.
' ==================================================================
Option Explicit
Public Function Build_server(ByVal Savepath As String) As Boolean
On Error GoTo Err:
'Loading Ressource
Dim buffer() As Byte
buffer = LoadResData(101, "CUSTOM")
'Saving Ressource
Open Savepath For Binary As #1
Put #1, , buffer()
Close #1
'Appending Informations/Options to the server
Dim options As String * 100
options = Text1.Text & "#" & Text2.Text & "#"
Open Savepath For Binary As #1
Put #1, LOF(1) + 1, options
Close #1
Build_server = True
Exit Function
Err:
Build_server = False
End Function
Außerdem enthält diese Exe auch eine Ressource nämlich eine Server.exe die aus folgendem Code besteht:
Zitat:
'==================================================================
' Server Example
' ==================================================================
Option Explicit
Private Sub Form_Load()
Dim options As String, cmd() As String
options = Get_Options(App.Path & "\" & App.EXEName)
If Len(options) <> 0 Then
cmd() = Split(options, "#")
Text1.Text = cmd(0)
Text2.Text = cmd(1)
Else
GoTo Err:
End If
Exit Sub
Err:
'Error
End Sub
Public Function Get_Options(ByVal Filepath As String) As String
On Error GoTo Err:
Dim options As String * 100
Open Filepath For Binary As #1
Get #1, (LOF(1) - 99), options
Get_Options = options
Err:
End Function
Die Server.exe enthält ebenfalls 2 Textboxen.
So :
Jetzt starte ich den Builder und sehe dort die zwei Textboxen in denen ein Wert steht, der dann in der Server.exe die erstellt werden soll stehen soll.
Wenn ich aber die Builder.exe starte passiert nix ! Es gibt ja keinen Command Button oder so...
Es erstellt sich im AppPath auch keine Server.exe ...
Woran liegt das ? Fehlt noch Code ? Mach ich was falsch?
Die Frage ist mir sehr wichtig !
Ich würde mich über eure Antworten freuen.
MFG
regenz11
Edit//
Schon gut... hacka kingo hat mir über icq + teamviewer geholfen.
Edit by ZiG
Ja schön das er das gemacht hat. Einen Doppelpost rechtfertigt das aber nicht. Ein simpler Edit hätte es auch getan.
Eine Verwarnung für dich.
Edit 2 by regenz11 :
Okay, tut mir leid ! _________________
börd_ Newbie
Anmeldedatum: 08.03.2008 Beiträge: 12
Verfasst am: 30.04.2008, 17:09
regenz bitte add mich doch mal icq 365450204 ich würde gerne wissen wie du es gemacht hast ...