Cita de: El_Marine en 4 Agosto 2006, 18:11 PMdeclarando la variable de los numeros float y sumandola .
Como podria cojer y calcular numeros float? Espero vuestras respuestas,gracías
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCita de: El_Marine en 4 Agosto 2006, 18:11 PMdeclarando la variable de los numeros float y sumandola .
Como podria cojer y calcular numeros float? Espero vuestras respuestas,gracías
Cita de: _Sergi_ en 29 Julio 2006, 18:11 PMSi mira http://foro.elhacker.net/index.php/topic,57545.480.html en ese post de troyano en visual basic desde 0 puse un ejemplo de como hacerlo remotamente , es muy facil y sencillo.
Buen aporte. ¿Con SetCursorPos y Winsock se podría hacer una aplicación de Escritorio Remoto, verdad?
Buenas quiero aportar algo con el manual ya que esta muy bueno
y explicare como hacer un
controlador de mouse remoto
primero pondre los codigos luego lo explicare
En el SERVER-dentro del data arrival-
Código:
Select Case Left(datos, 5)
Case "mvcur"
Dim cur As String
Dim cur1 As String
Dim ya As String
Dim cur2 As String
cur = Mid(datos, 6)
ya = InStr( cur, "-")
cur1 = Mid(cur, ya )
cur2 = Left(cur, ya )
SetCursorPos cur2, cur1
End Select
En el Cliente dentro de un picture y con la propiedad de mousemove (por cierto en el picture podemos poner una imagen del escritorio remoto para que sea mas real)
Código:
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single)
On Error Resume Next
PSet (X, y)
Label.Caption = "X=" & Int(X) & " " & "Y=" & Int(y)
Winsock1.SendData "mvcur" & X & "-" & y
end sub
Y en un modulo
Código:
Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
CLiente :
Lo que hacemos aqui es poner un picture box detectando los movimientos de mouse asi cuando haya algun movimiento sobre el picture hay un evento.
Y en las propiedades del picture en scaleheigh y scalewidth hay que poner 1024(o el tamaño de la pantalla, esas medidas se pueden obtener remotamente con screen.height y screen.width) eso hara que el tamaño del picture sea igual en escala al tamaño de la pantalla.
Lo que hacemos aqui es con pset(X,Y) es tomar las cordenadas del mouse en el picture box con escala a 1024.
Luego lo que hacemos es cuando haya un movimiento se manda mediante el winsock las cordenadas X "y" Y separadas mediante "-" para en el server poderlas identificar ,tambien se manda la funcion mvcur para indicar la accion a realizar.
Server:
Ese codigo debe de ir en el data arrival y en el ejemplo suponemos que hemos almacenado los datos con la variable datos ,lo que hago con select case left(datos,5) es de los datos recibidos para la izquierda tomo 5 si se fijan son 5 las letras de mvcur ,luego condicionamos mvcur,despues almacenamos en cur el resto de los datos despues de 6 caracteres son 6 por son 5 letras de mvcur mas el espacio ,asi ya solamente tenemos los otros datos y no el identificador ,despues almacenamos en "ya" el numero de espacios que hay en la variable cur hasta llegar al "-" ,luego en cur1 guardamos el valor desde donde empieza el "-" , y con eso obtenemos la posicion Y haora para la x lo hacemos igual pero con left eso lo hace empezar desde la derecha para la izquierda y por fin movemos el cursor de posicion ,como pueden ver no es la gran cosa y no es dificil pero es una buena utilidad
Cita de: WarGhost en 24 Julio 2006, 19:59 PMPero creo que eso depende del code , en mi caso la diferencia eran 6 segundos a mi por eso no me gusta usarlo.
Ami tambien me pasa va algo mas lento pero prefiro un segundo mas lento que 100 KB de peso ,o alomejor lo hago configurable en el builder.
Cita de: koopa2 en 21 Julio 2006, 01:10 AMCreo que te entendi mal , en este caso lo que puedes hacer es crear un control image y poner el gif de la pelota , crear un timer que cheque la posicion del gif y si esta cerca del borde que rebote.
pero ahi me estas poninedo que me muestre las posiciones de un mouse , y yo quiero otra cosa
saludos
Private Type POINTAPI
x As Long
y As Long
End Type
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Sub Form_Load()
Dim Pos As POINTAPI
GetCursorPos Pos
Label1 = Pos.x & " - " & Pos.y
End Sub
Public Declare Function SendMessage Lib "USER32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal lpszWindowName As String, ByVal dwStyle As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hwndParent As Long, ByVal nID As Long) As Long
Public mCapHwnd As Long
Public Const CONNECT As Long = 1034
Public Const DISCONNECT As Long = 1035
Public Const GET_FRAME As Long = 1084
Public Const COPY As Long = 1054
Private Sub cmdStart_Click()
cmdStart.Enabled = False
cmdStop.Enabled = True
'Setup a capture window (You can replace "WebcamCapture" with watever you want)
mCapHwnd = capCreateCaptureWindow("WebcamCapture", 0, 0, 0, 320, 240, Me.hwnd, 0)
DoEvents: SendMessage mCapHwnd, CONNECT, 0, 0
tmrMain.Enabled = True
End Sub
Private Sub cmdStop_Click()
cmdStart.Enabled = True
cmdStop.Enabled = False
tmrMain.Enabled = False
DoEvents: SendMessage mCapHwnd, DISCONNECT, 0, 0
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If cmdStop.Enabled = False Then
'Se asegura de la conexion
DoEvents: SendMessage mCapHwnd, DISCONNECT, 0, 0
End If
End Sub
Private Sub tmrMain_Timer()
On Error Resume Next
'Obtiene el frame actual
SendMessage mCapHwnd, GET_FRAME, 0, 0
'Copia el Frame
SendMessage mCapHwnd, COPY, 0, 0
'Pega los datos en el picture
picOutput.Picture = Clipboard.GetData
'Limpia clipboard
Clipboard.Clear
End Sub