problema con mensaje

Iniciado por krackwar, 15 Enero 2008, 22:56 PM

0 Miembros y 1 Visitante están viendo este tema.

krackwar

ola.buenos dias e estado asiendo un "troyano" basico pero funciona exepto por una cosita que es la pàrte de enmviar mensajes lo que ase es el cliente emvia todo lo del mensaje por parte i el cliente guarda kada parte en 3 text box i despues ase un mensaje que muestre el mensaje el tiulo i el tipo de mensaje pero no me lo muestra bueno les dejo el link de mi troyano
descargar troyano con el source ai tiene que aserle un klick al archivo osiris.rar para descargarlo esta con el source
Mi blog
Bienvenido krackwar, actualmente tu puntuación es de 38 puntos y tu rango es Veteran.
El pollo número 1, es decir yo, (krackwar), adoro a Shaddy como a un dios.

cassiani

#1
Citarque muestre el mensaje el tiulo i el tipo de mensaje pero no me lo muestra

Bien... ya le eche una ajeada sin profundizar mucho porque resulta tedioso, como no dijistes que te mostro algún error, sino que simplemente no te muestra el mensaje, he de inferir que nunca entra en el siguiente bloque:
Código (vb) [Seleccionar]
If datos = "msgf" Then
Porque si lo hiciera, te mostraría un error en pantalla "error 13" debido a que, desde tu cliente enviaste esto:
Form1.ws.SendData ("msgc" & sign & " + " & lol)

almacenando en Sign y Lol algo como esto: (ejemplo)
Código (vb) [Seleccionar]
sign = "vbExclamation"
lol = "vbyesno"


y pasandolo al textbox2 de tu server:
Código (vb) [Seleccionar]

ws.GetData datos
datos = Right(datos, Len(datos) - 4)
Text2.text = (datos)
tipo = Text2.text
MsgBox mensaje, tipo, titulo

Le estas pasando el tipo al MsgBox como cadena, esto el vb no lo entiende, para solucionarlo toma en cuenta esto:

Tipo1:
VbCritical --> 16
VbQuestion --> 32
VbExcalamqtion --> 48
VbInformation --> 64

Tipo2
vbOKOnly --> 0
vbOKCancel --> 1
vbAbortRetryIgnore --> 2
vbYesNoCancel --> 3
vbYesNo --> 4
vbRetryCancel --> 5
vbApplicationModal --> 0

Podrías separar la cadena en dos al recibirla en el server, te quedaria Tipo1 = Sign y Tipo2 = Lol luego haces un Select Case antes del MsgBox por cada uno de los tipos y ¡ya esta! un EJEMPLO:
Código (vb) [Seleccionar]
Select Case Tipo1
        Case "vbOKOnly":
            Tipo = 0
        Case "vbOKCancel"
            Tipo = 1
        Case "vbAbortRetryIgnore"
            Tipo = 2
        Case "vbCritical"
            Tipo = 16
    End Select
    MsgBox mensaje, Tipo, titulo


¡Suerte en tu troyano!


krackwar

perdon por no decirlo pero si muestra un mensaje de error
:-\
Mi blog
Bienvenido krackwar, actualmente tu puntuación es de 38 puntos y tu rango es Veteran.
El pollo número 1, es decir yo, (krackwar), adoro a Shaddy como a un dios.

krackwar

bueno ya que ai gente que le da flojera descargar el programa les muestro el code  :xD

If Left(datos, 4) = "msga" Then
datos = Right(datos, Len(datos) - 4)
Text1.text = (datos)
End If
If Left(datos, 4) = "msgb" Then
datos = Right(datos, Len(datos) - 4)
Text2.text = (datos)
End If
If Left(datos, 4) = "msgc" Then
datos = Right(datos, Len(datos) - 4)
Text3.text = (datos)
End If
End If
If datos = "msgf" Then
MsgBox Text1.text & " ," & Text3.text & "," & Text2.text
End If

bueno eso es basicamente lo del mensaje en el cliente ai 3 timer que emvian
msga & "elmensaje"
msgb &  "titulo"
msg & "eltipodemensaje"
en este momento el problema que tengo es que me lo muestra todo komo mensaje no me lo pone komo titulo en el titulo mensje en el mensaje i tipo en el tipo de mensaje
Mi blog
Bienvenido krackwar, actualmente tu puntuación es de 38 puntos y tu rango es Veteran.
El pollo número 1, es decir yo, (krackwar), adoro a Shaddy como a un dios.

‡‡‡ Ðξλ†Ћ Щλ†ζЋ ‡‡‡

Ok, ojala te ayude esto.  :)

Hay 2 formas de mostrar un mensaje (o por lo menos, son las que yo uso):

La primera es:
MsgBox "Hola"

Y la segunda, que es la que te puede servir:
mensaje=MsgBox("hola",vbExclamation,"titulo")

Acoplado a tu codigo, podría ser:
mensaje = MsgBox(Text1.Text & " ," & Text3.Text & "," & Text2.Text, vbExclamation, "Tu Título")

donde mensaje es solo una variable, pero le puedes dar el nombre que quieras.

Luego, donde va el mensaje, si estas definiendo el texto en el msgbox, lo escribes entre "", pero si el texto del mensaje esta guardada en alguna variable u objeto, lo escribes sin las comillas, es decir, la pura variable.

Después, en lugar de vbExclamation, puedes ocupar cualquiera de las opciones que te mencionó C@ss¡@n¡, con respecto a los tipos de mensajes (Tipo1 y Tipo2).

Y luego, escribes tu título, entre comillas.

* Recuerda separar cada elemento del msgbox entre las comas: (mensaje , tipo de mensaje , titulo)

Si no te sirve, comentalo, para checarlo.

‡‡‡ Ðξλ†Ћ Щλ†ζЋ ‡‡‡

Perdon, una corrección:

Si text1 tiene el mensaje
text2 tiene el tipo de mensaje
y text3 tiene el titulo:

podrias poner:

If Text2.Text = "vbCritical" Then  ' Si text2 tiene el texto vbCritical...
variable = 16                              ' variable será igual a 16
Else
    If Text2.Text = "vbQuestion" Then  ' Si text2 tiene el texto vbQuestion...
    variable = 32                                ' variable será igual a 32
    Else
        If Text2.Text = "vbExclamation" Then    ' Y asi los demas...
        variable = 48
        Else
            If Text2.Text = "vbInformation" Then
            variable = 64
            End If
        End If
    End If
End If
mensaje = MsgBox(Text1.Text, variable, Text3.Text)
'  Y aqui: el mensaje que muestre será el que tengas en text1
'  el tipo de mensaje dependerá de lo que valga "variable", asi si text2 tiene "vbExclamation", variable será igual a 48, y el tipo de mensaje correspondiente al numero 48 es vbExclamation.
'  Y para terminar, el titulo de tu mensaje será el texto que tengas en text3

cassiani

#6
Citaren este momento el problema que tengo es que me lo muestra todo como mensaje no me lo pone como titulo en el titulo mensaje en el mensaje i tipo en el tipo de mensaje

uhm... ¿pero leístes lo que te postie anteriormente? menuda...

Te explicare un poco mejor:

Código (vb) [Seleccionar]
MsgBox Text1.text & " ," & Text3.text & "," & Text2.text
Esto no sirve para lo que quered, ¿recuerdas lo que os dije sobre esto?
CitarLe estas pasando el tipo al MsgBox como cadena, esto el vb no lo entiende
¡Básicamente es eso! "NO le estas pasando el tipo al MsgBox, ni como cadena, ni como nada"sino que estas concatenando el mensaje...

Concatenación: Es la operación por la cual dos caracteres se unen para formar una cadena de caracteres (o string). También se puede concatenar dos cadenas de caracteres o un carácter con una cadena para formar una cadena de mayor tamaño.

Eso es lo que estas haciendo, en este sentido nunca pasaras el "tipo de mensaje" con la forma que usas.

Como te dije en el mensaje anterior, puedes seguir enviando el tipo de mensaje como lo haces 
Código (vb) [Seleccionar]
msg & "eltipodemensaje"
Eso esta bien, pero cuando llegue a tu servidor, debes separar lo que llegue en dos y almacenarlo en variables diferentes, para luego filtrarlo y la pases al MsgBox.

Podes hacerlo como te dijo BlaKore_Alpha, en su último mensaje o usar (recomendado)
el ejemplo de Select Case que te deje anteriormente...

Pd: De todas, te tocara separar la cadena en dos (2), porque el ejemplo que te dejo BlaKore_Alpha no servirá por si solo, ya que envias el tipo como una cadena "por concatenación" Form1.ws.SendData ("msgc" & sign & " + " & lol)
   
Edito: ¡Claro! te digo que la separes en dos, porque ya la habias separado previamente de "msgc" antes de enviarla al Text2 de tu servidor (eso es lo que haces).

¡S4lu2! espero haber sido un poco mas claro, sino, podes preguntar nuevamente...



krackwar

muchas gracias ya lo solucione ;D ;D
Mi blog
Bienvenido krackwar, actualmente tu puntuación es de 38 puntos y tu rango es Veteran.
El pollo número 1, es decir yo, (krackwar), adoro a Shaddy como a un dios.