Menú

Mostrar Mensajes

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ú

Mensajes - Stereo

#21
Hola buenas.
El caso es que estoy empezando con SDL, y me ha surgido esa duda, cómo comprobar que 2 cuadrados colisionan si solo tengo la posición y tamaño de cada uno(X, Y).

Se me ha ocurrido comprobar cada vértice:

Y funciona, pero me parece demasiado code, quería saber si se puede optimizar de alguna forma.

#22
Me sigue tirando error al empezar el programa con debug en esta linea :S

Dice: Se detectó PInvokeStackImbalance

length = GetWindowText(hwnd_Ventana, Caption_Ventana, Len(Caption_Ventana))
#23
Gracias pero el caso es que esa función no la reconoce, uso visual studio 2010
#24
Buenas, llevo todo el dia intentando obtener el titulo de la ventana que tienes abierta pero no lo he conseguido, e aqui mi intento:

Public Class Form1
    Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
    Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long
    Private Function findPartialTitle(ByVal partialTitle As String) As IntPtr
        For Each p As Process In Process.GetProcesses()
            If p.MainWindowTitle.IndexOf(partialTitle, 0, StringComparison.CurrentCultureIgnoreCase) > -1 Then
                '
                'We found a match, so return the handle to the window
                '
                Return p.MainWindowHandle
            End If
        Next

        '
        'If no match, return NULL (or close enough)
        '
        Return IntPtr.Zero
    End Function

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim hwnd As Long = findPartialTitle("YouTube")
        Dim lngLen As Integer = 512
        Dim MyStr As String
        'Create a buffer
        MyStr = 255

        'Get the window's text
        GetWindowText(hwnd, MyStr, 254)
        MsgBox("La ventana abierta no es correcta, intentalo de nuevo: " &MyStr)
    End Sub
End Class


El error al depurar es en esta linea:

GetWindowText(hwnd, MyStr, 254)
#25
Programación C/C++ / Enviar mensaje sockets
19 Noviembre 2011, 12:20 PM
Hola buenas, soy nuevo en el foro, y viendo que aquí se resuelven muchas dudas, decidi registrarme.

Mi duda es cómo puedo enviar un texto por ejemplo a una IP en c++?
He estado viendo tutoriales de sockets pero apenas me entero :S

Encontré esto:

Código (cpp) [Seleccionar]
#include "winsock2.h"
#include <iostream>
using namespace std;

void wsock_init();

int main()
{
   wsock_init();
   SOCKET sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
   struct sockaddr_in si;
   si.sin_family = AF_INET;
   si.sin_port = htons(666);
   si.sin_addr = *(struct in_addr*)gethostbyname("asdasd")->h_addr;
   memset(&(si.sin_zero), 0, 8);

   if (connect(sock, (struct sockaddr*)&si, sizeof(struct sockaddr)))
   {
       cout << "Could not connect to host.\n";
       return 1;
   }

   char buf[4096];
   while (recv(sock, buf, 4096, 0))
       cout << buf;

   shutdown(sock, SD_BOTH);
   closesocket(sock);
   WSACleanup();
   return 0;
}

void wsock_init()
{
   WSADATA wd;
   if (WSAStartup(MAKEWORD(1, 1), &wd))
   {
       cout << "Error initializing Winsock DLL" << endl;
       exit(1);
   }
}


Si alguien puede ayudarme se lo agradecería.

PD: Se un poquito de c++ y uso code::blocks