Help Desk
Informações do sistema em C++

Como faço para obter informações do sistema em C++. Informações como: quantidade de memória, HD, IP da máquina, nome da máquina entre outras...
Emerson Carvalho

Há muitas funções nessa área. Vou mencionar umas poucas aqui. Se não atenderem ao que você está precisando, me mande uma consulta mais específica.
Memória disponível no Heap
unsigned int coreleft(void);   // Small data models
unsigned long coreleft(void);  // Large data models
A função coreleft retorna o número de byte disponíveis no Heap. Para programas compilados usando small memory model, a função retorna um inteiro sem sinal. Já para os programas compilados para large data model, retorna um inteiro longo sem sinal
Espaço disponível em Disco
void getdfree(unsigned char drive, struct dfree *dfptr);
A função getdfree preenche a estrutura apontada por dfptr. Os drives são numerados a partir de 1 [drive A]. Forneça 0 [zero] em drive para obter informações sobre o drive default.
struct dfree
{
   unsigned int df_avail; // Unused clusters
   unsigned int df_total; // Total number of clusters
   unsigned int df_bsec;  // Number of bytes per sector
   unsigned int df_sclus; // Number of sectors per cluster   
};
Nome da Máquina
BOOL GetComputerName(LPTSTR lpBuffer, LPDWORD nSize); 
lpBuffer aponta para área de memória que receberá o nome da máquina em um string de caracteres [terminado com nulo]

nSize aponta para uma variável que contém o tamanho do buffer em caracteres. O buffer deve ser grande o suficiente para conter  MAX_COMPUTERNAME_LENGTH + 1 caracteres. 

Autor:  Dagoberto Haele Arnaut
Exemplos extraídos de Borland C++ 5.0 Programmer's Guidel

| Home | Bookmarks | Universidades | Para Saber mais | Universidades | WEB Directory | Mapa do site |