PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie String übergeben?



sunny-boy3
15.07.2009, 11:51
Hallo ich habe da gerde nen kleines Problem ich habe mir ein builder gebastelt welcher auch gut funktioniert jetzt habe ich eine checkbox hinzugefügt namens anti virtualpc ich möchte das wen die checkbox gechekt wurde und der server gebuildet wird ein spezieler text übergeben wird wie mache ich das ?mit einetextbox weiß ich es aber wie leuft das mit einer checkbox?

Sawyer
15.07.2009, 12:01
einfach den Boolschen wert der Textbox mit übergeben , den status der checkbox kannst du mit der Eigenschaft checkend feststellen

z.B:

CheckBox1.checked

sunny-boy3
15.07.2009, 12:19
einfach den Boolschen wert der Textbox mit übergeben , den status der checkbox kannst du mit der Eigenschaft checkend feststellen

z.B:

CheckBox1.checked



Wieso mit der textBox ich meine jetzt so



meine Code in meiner checkbox sehen wie folgt aus

If CheckBox5.Checked Then
MessageBox.Show("Anti VirtualPc Wurde Aktiviert", "Anti VirtualPc, MessageBoxButtons.OK, MessageBoxIcon.Information)
Dim AntiVirtal As String = "Call AntiVirtualPc"
End If
If Not CheckBox5.Checked Then
MessageBox.Show("Anti VirtualPc nicht Aktiv", "Anti VirtualPc", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End If



nun habe ich ja den build button wo ich den string eintrage

wen ich dort den string aber eintrage in den button und meine checkbox nicht gecheckt wurde existiert mein string ja nicht

Sawyer
15.07.2009, 12:32
wen ich dort den string aber eintrage in den button und meine checkbox nicht gecheckt wurde existiert mein string ja nicht

Deshalb sollte man eine variable Global definieren und ihr einen Standardwert geben , somit wäre das Problem gelöst ;)

MfG

sunny-boy3
15.07.2009, 12:34
Deshalb sollte man eine variable Global definieren und ihr einen Standardwert geben , somit wäre das Problem gelöst ;)

MfG



Hättest du da vllt nn beispiel script??

Sawyer
15.07.2009, 12:41
Hättest du da vllt nn beispiel script??

Definiere deine Variable einfach innerhalb deiner klasse , somit ist sie global


Dim AntiVirtal As String = "KeinAntiVirtualPc"

Belege die variable bei der Initialisierung mit einem Standardwert. Wenn also deine CheckBox nicht angeklickt wurde , behält die variable den Initialisierungswert , welches du dann bei der Stub wiederum abfragen kannst.

MfG

sunny-boy3
15.07.2009, 12:50
Definiere deine Variable einfach innerhalb deiner klasse , somit ist sie global


Dim AntiVirtal As String = "KeinAntiVirtualPc"Belege die variable bei der Initialisierung mit einem Standardwert. Wenn also deine CheckBox nicht angeklickt wurde , behält die variable den Initialisierungswert , welches du dann bei der Stub wiederum abfragen kannst.

MfG



hmmm Verstehe das iwie nicht so wircklich !!!!
!!!
!!

aL1ien
15.07.2009, 12:52
Definiere deine Variable einfach innerhalb deiner klasse , somit ist sie global


Dim AntiVirtal As String = "KeinAntiVirtualPc"Belege die variable bei der Initialisierung mit einem Standardwert. Wenn also deine CheckBox nicht angeklickt wurde , behält die variable den Initialisierungswert , welches du dann bei der Stub wiederum abfragen kannst.

MfG
ich würde ihm nicht unbedingt zu einer globalen variable raten...es funktionert, jedoch ist es seeehr unsauber.

Sawyer
15.07.2009, 12:54
ich würde ihm nicht unbedingt zu einer globalen variable raten...es funktionert, jedoch ist es seeehr unsauber.

Ich weiß das man eine variable nur da definieren sollte , wo sie gebraucht wird , aber das kann er ja machen wie es ihm beliebt ;)

MfG

aL1ien
15.07.2009, 13:00
Ich weiß das man eine variable nur da definieren sollte , wo sie gebraucht wird , aber das kann er ja machen wie es ihm beliebt ;)

MfG
Klar, viele wege führen nach Rom. Man sollte ihm aber zuerst den richtigen weg zeigen und nicht auf einen Pfad voller hügel schicken;)

sunny-boy3
15.07.2009, 21:14
Klar, viele wege führen nach Rom. Man sollte ihm aber zuerst den richtigen weg zeigen und nicht auf einen Pfad voller hügel schicken;)


habe das noch net so richtig gerallt

inmate
15.07.2009, 21:51
Also pass auf ^^

Du hast die checkbox und die textbox.
Du übergibst beide an die Stub selbst wenn die Textbox leer ist.

dim text as boolean = checkbox1.checked
dim textboxinhalt as string = textbox1.text


...value = text & "<>" & textboxinhalt

Und in der Stub schreibst du:

Dim text as boolean
dim textboxinhalt as string
If text = true then
msgbox(textboxinhalt)
end if

mfg

Sirect
15.07.2009, 22:06
"<>"
2 Zeiche zum Splitten? Uh da hab ich böse Erfahrungen gemacht... Geht in die Hose :D

Mach es doch einfach so:


...value = text & "<>" & CStr(textboxinhalt & "#")
Schon hast du keine Leerstrings mehr und kannst Splitten.
Die Stub muss dann einfach "#" mit "" ersetzen...
Ist unsauber, ich weiß, aber kompliziertere Lösungen wird er nicht verstehen :)

sunny-boy3
16.07.2009, 11:06
Das Problem ist ich habe dafür keine TextBox ich habe die checkBox in den builder nun sieht es bei mir in der kllasse so aus
......

Builder =


Public Class Frm_Builder
Dim persky As Boolean
Dim Befehle As String


und so in den button


persky = AntiKas.Checked


SaveFileDialog1.ShowDialog()
IO.File.Copy(BuilderStub, SaveFileDialog1.FileName)


VB6setting.Value = persky


FileOpen(1, (SaveFileDialog1.FileName), OpenMode.Binary)
FilePutObject(1, VB6setting.Value, LOF(1) + 1)
FileClose(1)
MessageBox.Show("Server wurde Gebuildet", "Underground stealer", MessageBoxButtons.OK, MessageBoxIcon.Information)




und die stub den so

Public Class Form1
Dim persky As Boolean



Private Sub Form1_Load
persky = Befehle(4)

If persky = True Then
Call AntiPers()
End If


Aber ich kriege ein fehle beim formload (Fehler bei der konvertierung im wert true n Boolean



Please Help

Sawyer
16.07.2009, 11:30
wundert mich nicht , du versuchst einen String an einen bool zu übergeben , versuche das ganze mal so


persky = Convert.ToBoolean(Befehle(4))

MfG

sunny-boy3
16.07.2009, 11:36
Danke the papst du hast mir mal wieder geholfen

Sirect
16.07.2009, 11:36
Nein das geht in VB problemlos.

True wird in allen Cases zu 1 als Boolean.
Der Fehler liegt wohl wo anders.