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 - patilanz

#331
Como puedo minimizar mi programa en el área de notificación ?

Saludos
#332
Puedes hacer una especie de contador variable que cuente los \n encontrados para las nuevas lineas, necesitas 4 después obtienes la linea y lo divides según los espacios.
Para dividir utiliza strtok()

http://www.cplusplus.com/reference/cstring/strtok/
http://codigomaldito.blogspot.com.es/2005/11/dividir-en-tokens-o-palabras-con.html

Saludos
#333
El problema no es en crear los objetos sino en eliminarlos. Cuando los creo un objeto, no importa si es botón texto u otra cosa luego para actualizar tengo que eliminarlos para crear los de nuevo y actualizar los procesos.

Como lo hace el administrador de tareas de windows que esta todo el tiempo actualizando?
#334
Sigo sin creermelo  :o :o
Se puede fiar de la fuente ? Si es verdad tengo ganas de ver la fuente!

Saludos
#335
Programación C/C++ / Re: Qt listar procesos
13 Noviembre 2014, 16:02 PM
Gracias por responder. Process no me pareció interesante:

Código (cpp) [Seleccionar]
struct process{
public:
QLabel *name;
QPushButton *close;
QPushButton *suspend;
QPushButton *folder;
};


El contenedor lo puse antes:
Código (cpp) [Seleccionar]
std::vector<process *> processes;

@Edit: Si nadie sabe como resolver mi código, como listaríais los procesos de forma gráfica con sus 3 botones para las acciones  ? :P




El problema es como eliminar objetos de qt. Creo que voy a cambiar de titulo.
Se como ocultarlos pero quiero vaciar la memoria porque cada vez que se vuelven a refrescar los procesos se tendrán que crear botones y textos de nuevo y ocupar mas memoria y encima al crear lo hace lento y el programa se para por un segundo.

Hay otra manera? Agradezco cualquier ayuda  :-(
#336
Muy interesante. Yo también tengo windows 8.1 y voy a probar a ver que hace. No me esperaba que explorer se encargue del metro.

Significa esto que si se consigue shell code en explorer.exe tendras control sobre la interfaz metro ? Se podría manipular los datos que recibes y mostrar información incorrecta.
#337
Hola tengo esto:

Código (cpp) [Seleccionar]
while (Process32Next(handle, &process)){
::process * _process = new ::process();
_process->name = new QLabel(ui.processes_widged_area);
_process->close = new QPushButton(ui.processes_widged_area);
_process->folder = new QPushButton(ui.processes_widged_area);
_process->suspend = new QPushButton(ui.processes_widged_area);

char _name[261];
wcstombs(_name,process.szExeFile,260);
_process->name->setText(_name);
_process->close->setText("Close");
_process->folder->setText("Open dir");
_process->suspend->setText("Suspend");

processes.insert(processes.end(), _process);

ui.gridLayout_4->addWidget(_process->name, processes.size(), 1, 1, 1);
ui.gridLayout_4->addWidget(_process->close,processes.size(),2,1,1);
ui.gridLayout_4->addWidget(_process->folder, processes.size(), 3, 1, 1);
ui.gridLayout_4->addWidget(_process->suspend, processes.size(), 4, 1, 1);
}



processes es std::vector<process *> processes;
Es una funcion que tiene que refrescar los procesos. Para esto necesito borrar los anteriores:

Código (cpp) [Seleccionar]
for (int i = 0; i < processes.size(); i++){
processes[i]->folder->deleteLater();
processes[i]->close->deleteLater();
processes[i]->name->deleteLater();
processes[i]->suspend->deleteLater();
}


Pero es aquí donde falla. Con el típico mensaje de infracción de acceso.

Alguien me puede ayudar ?

Saludos
#338
Y no hay menara de hacer lo con ollydgb ? Ahora no tengo instalado el windgb y no me apetece instalarlo.
#339
Justo lo probé y luego vi tu respuesta  ;D

Como depuraste rundll32.exe yo al abrir el mouse y luego al intentar attach desde olly me sale ERROR_NOT_SUPPORTED ?

Creo que pasa lo mismo con SPI_SETMOUSECLICKLOCKTIME
#340
Hola tengo esto:

Código (cpp) [Seleccionar]
bool p = true;
SystemParametersInfo(SPI_SETMOUSECLICKLOCK, 0, &p, 0);
DWORD speed = 1300;
SystemParametersInfo(SPI_SETMOUSECLICKLOCKTIME, 0, &speed, 0);
SystemParametersInfo(SPI_GETMOUSECLICKLOCKTIME, 0, &speed, 0);


Se me activa bien pero luego al intentar cambiar la velocidad con SPI_SETMOUSECLICKLOCKTIME luego al recibir la, el speed ya es un numero como 3252721060 y el mouseLock no funciona. Si lo cambio desde el panel de control funciona y consigo apagar y encender desde c++ pero no cambiar la velocidad.

Donde fallo? En Microsoft pone:

Adjusts the time delay before the primary mouse button is locked. The uiParam parameter should be set to 0. The pvParam parameter points to a DWORD that specifies the time delay in milliseconds. For example, specify 1000 for a 1 second delay. The default is 1200

Saludos