Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-07-2006
Avatar de OSKR
OSKR OSKR is offline
Miembro
 
Registrado: nov 2004
Ubicación: San Cristóbal/Táchira/Venezuela
Posts: 389
Poder: 20
OSKR Va por buen camino
Porcentaje de uso del CPU

Aqi está el codigo en Builder, no se si ya alguien lo habia publicado aqi, en otros foros ..o no se....crei ver algo por ahi pero en linux....
Código:
#include <Winbase.h>
#include <stdio.h>
#pragma hdrstop
#pragma argsused
#define _WIN32_WINNT 0x0501
void Error(HANDLE Handle)
{ LPVOID lpMsgBuf;
  FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,NULL,GetLastError(),MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),(LPTSTR) &lpMsgBuf,0,NULL);
  MessageBox( NULL, (char *)lpMsgBuf,"GetLastError", MB_OK|MB_ICONINFORMATION);
  LocalFree( lpMsgBuf );
  FreeLibrary(Handle);
  exit(0);
}

int main(int argc, char* argv[])
{ int i=10;
  bool (*GST)(FILETIME *,FILETIME *,FILETIME *);
  __int64 ITn=0,ITv=0,KTn=0,KTv=0,UTn=0,UTv=0;
  HANDLE Handle=LoadLibrary("kernel32.dll");
  if(!Handle)
    return 1;
  GST=(bool (*)(FILETIME *,FILETIME *,FILETIME *))GetProcAddress(Handle,"GetSystemTimes");
  if(!GST)
    return 1;
  while((--i)!=0)
  { FILETIME  IT,KT,UT;
    try
    { bool res=GST(&IT,&KT,&UT);
      Sleep(1500);
      if(!res)
        Error(Handle);
      memcpy(&UTn,&UT,sizeof(FILETIME));
      memcpy(&ITn,&IT,sizeof(FILETIME));
      memcpy(&KTn,&KT,sizeof(FILETIME));
    }
    catch(Exception &Ex)
    { printf("Puta excepcion en la segunda\n");
    }
    __int64 Deno=((KTn-KTv)+(UTn-UTv));
    if( Deno==0)
      printf("0\n");
    else
      { double Prcntj=((double)Deno-(ITn-ITv))/Deno*100;
        printf("%f\n",Prcntj);
      }
    KTv=KTn;
    UTv=UTn;
    ITv=ITn;
  }
  FreeLibrary(Handle);
  return 0;
}
oooooopppppsss no puedo creerlo!!! ahora la etiqeta si respeta el tabulado!!!! no puede ser!!!! .
Una cosita....a veces se tira una excepción sin motivo aparente, no se xq.. si alguien puede y qiere corregirlo.....q lo haga.....esto es oarte de un agente SNMP q se esta haciendo aqi en la Univ. aún estoy pariendo con tomar la temperatura del procesador, ya se como pero por ser WMI se hace casi imposible
__________________
Los Estados Unidos parecen destinados por la Providencia para plagar la América de miserias a nombre de la libertad."
Simón Bolívar
(Carta al Coronel Inglés Patricio Cambell 05/08/1829).
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Incrementa el porcentaje y no imprime. zugazua2001 Impresión 1 19-05-2006 08:59:19
Ancho de columnas en StringGrid en porcentaje andre OOP 3 17-06-2004 14:36:54
Porcentaje en un ProgressBar silviodp OOP 1 15-04-2004 06:41:41
mostrar porcentaje con CGauge del texto de un Edit garth C++ Builder 3 26-03-2004 12:23:25
Matemáticas: Calcular porcentaje DarkByte Varios 9 01-02-2004 17:42:08


La franja horaria es GMT +2. Ahora son las 10:35:46.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi